我有一些使用的业务对象:
Web.Configuration.WebConfigurationManager.AppSettings.Item("SomeSetting")
现在我将这些对象分解到它们自己的库中,当库中没有任何其他内容与 web 有任何关系时,依赖 System.Web 感觉很脏。
这样做的正确方法是什么?
更新:发现这个例子显示了每个程序集的配置文件。这是一个坏主意吗?
我有一些使用的业务对象:
Web.Configuration.WebConfigurationManager.AppSettings.Item("SomeSetting")
现在我将这些对象分解到它们自己的库中,当库中没有任何其他内容与 web 有任何关系时,依赖 System.Web 感觉很脏。
这样做的正确方法是什么?
更新:发现这个例子显示了每个程序集的配置文件。这是一个坏主意吗?
将其放入 web.config 并调用 ConfigurationManager.AppSettings["KEY"]
您的库中不需要 system.web。
如果你有一堆 appSettings,我也很喜欢通过从 System.Configuration 继承 ConfigurationSection、ConfigurationElement 等来使用自定义配置部分。如果这些设置与代码的特定区域紧密耦合,这尤其适用。
这允许您以强类型属性的形式访问设置,并且还可以更好地控制需要哪些设置、每个设置的允许值(您可以使用枚举),并且您还可以拥有集合。
为什么不使用 Web.config?我在 MSDN 中看到提到它是 web 应用程序的 app.config 的正确模拟。