【发布时间】:2009-03-27 17:18:30
【问题描述】:
我有一个项目,我们正在将一些功能从现有客户端扩展到 ASP.NET 2.0 中的 Web 门户。客户端是基于 Windows 窗体的(在 .NET 2.0 中)。它有一些设置保存在 Project > Properties > Settings.settings 系统中,包括生成的 settings.Designer.cs 文件。该文件为每个设置提供了很好的自动包装器。
在尝试建立网站时,我一直对这个功能明显缺乏平等感到沮丧。我有一个 web.config,它可以有一个部分。这意味着通过带有字符串的代码进行访问,例如:
WebConfigurationManager.AppSettings["mySetting"];
我什至可以通过这种方式让设置引用另一个文件,提供一点抽象,并且更容易签入源代码控制:
<appSettings configSource="web.settings.config"/>
但最终这缺少客户端项目设置系统的某些功能。
如果可能的话,我特别喜欢这些功能:
- 自动生成的访问器类(为方便起见,intellisense..)
- 方便
- 强类型
- 提供智能感知
- 代码不会针对设置名称中的拼写错误/错误进行编译
- 简单的界面
- 之前的 settings.Settings 提供了一个不错的网格
- 代表所有选项
- 显示某些选项的下拉选项
- 不必编辑 XML
- 不能指尖括号
我知道可以创建一个包含这些内容的类,但它不会自动与设置保持同步,并且必须在任何更改时手动编辑。然而,它会提供上述的一些。
我可以像我们在客户端中那样获得与项目设置相同的功能吗?
管理 ASP.NET 2.0 网站设置的最佳方式是什么?
【问题讨论】: