用单例模式一次性加载文件,在访问速度上是足够快了.并且在配置文件修改的时候不会引起应用
程序的重起,只需要调用Save()方法即可生效, 真是非常方便呀.
还没有完?对,还有一个问题,这样的代码是可测试的吗,当然, 这里以NUnit为例,在测试时只需要将配置文件拷贝至测试工程的根目录,注意这里的生成选项使用复制到输出目录,在文件较新时复制. 当然,web.cofig也要拷贝至测试工程根目录下面并改名为 测试工程名称.dll.config 就可以了. 测试代码如下:
[Test]
public void ConfigFileTest()
{
SiteSettings.Instance.Theme = "default";
Assert.IsTrue(SiteSettings.Instance.Theme.Equals("default", StringComparison.InvariantCultureIgnoreCase));
SiteSettings.Instance.Theme = "blue";
SiteSettings.Save();
Assert.IsTrue(SiteSettings.Instance.Theme.Equals("blue", StringComparison.InvariantCultureIgnoreCase));
}在NUnit中可以看到测试已经通过.