2011-06-08 99 views
0

我希望能够在整个应用程序中使用Settings类,但是我仍然希望能够测试设置对象的填充。大多数设置来自注册表。自定义应用程序设置

目前我有这个,但我不知道在哪里填充,以便我可以嘲笑用于填充它的服务。

public class Program { 
    public static Settings SystemSettings = new SystemSettings(); 

    public void Main(string[] args) { 
     SystemSettings = new RegistryService().GetRegSettings(); 
    } 
} 

对此的任何想法都会很棒。

回答

0

创建一个单独的类,在应用程序中的所有类都可以访问它

public class Settings 
{ 
    private static Settings systemSettings; 
    public static Settings SystemSettings 
    { 
     get 
     { 
      if (systemSettings == null) 
       systemSettings = new Settings(); 
      return systemSettings; 
     } 
    } 
    public int SettingValue1{ get; set; } 
    private Settings() 
    { 
     SettingValue1 = 1;//from registery or somewhere 
    } 


} 

ANS使用这个类容易

int k = Settings.SystemSettings.SettingValue1; 
0

你需要做的是抽象你的底层设置存储,在这种情况下,Windows注册表,并让你的设置控制器调用你的抽象。

最好的方法是使用构造函数注入存储抽象。这样你可以让你的抽象(Windows注册表)嘲笑,这将允许你测试你的设置人口。

相关问题