在 web.config 或 app.config 中存储分层应用程序设置
我需要在 web.config 或 app.config 中以分层格式存储我的应用程序配置设置。这可能吗?或者我必须将其存储在某个 XML 文件或数据库中并使用它?简单的名称值对格式对我来说还不够。
<appSettings>
<Report1>
<add key="SourceFilePath" value="value1" />
<add key="DestinationFolderPath" value="value2" />
</Report1>
<Report2>
<add key="SourceFilePath" value="value1" />
<add key="DestinationFolderPath" value="value2" />
</Report2>
</appSettings>
它是一个基于 Web 的报告应用程序,我需要存储源文件、SSIS 包、FTP 服务器详细信息等的文件路径。
更新:如果我选择自定义配置部分选项,我可以将设置存储在单独的文件中吗保持主 web.config 文件从应用程序设置中保持干净?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
您无法将自定义元素添加到
appSettings
。实现自定义格式的最佳方法是编写自己的
ConfigurationSettings
类并在配置中使用它。这将允许您以强类型的方式存储数据,并具有有意义的元素和属性名称。
请参阅 MSDN 上的如何:使用 ConfigurationSection 创建自定义配置部分。
You can't add custom elements to
appSettings
.The best way to achieve a custom format it to write your own
ConfigurationSettings
class and use that in configuration.This will allow you to store data in a strongly typed way as well as have meaningful element and attribute names.
See How to: Create Custom Configuration Sections Using ConfigurationSection on MSDN.
你不能按照你的建议那样做。
您可以做的是按键名称对元素进行分组:
但最好的方法是定义您自己的 ConfigurationSection。
以下是有关此内容的一些链接:
You can't do that as you suggest.
What you can do is to group by the key name the elements:
The best way though would be to define your own ConfigurationSection.
Here's some links about this:
您无法按照您在应用程序设置中建议的方式存储 xml 元素。
如果您需要如上所述的层次结构,请尝试以下方法之一
将整个 xml 元素存储在 appsettings 中并解析 xml
将 xml 存储在配置部分(参见上面的答案)
使用 DslConfig 项目。
使用 NuGet 添加它,然后添加 AppSpike示例。
在您的情况下,您可以创建一个类 ReportConfig 并将此类用作配置类。
示例:
在 Variables.var 中创建一个配置文件条目
You can't store xml elements they way you suggested in appsettings.
If you need a hierarchy as you mentioned try one of the following approaches
Store whole xml elements in appsettings an parse the xml
Store the xml in config section (see answers above)
Use the DslConfig project.
Add it with NuGet and look add the AppSpike for examples.
In your case you could create a class ReportConfig and use this class as configuration class.
Example:
Create a config File entry in Variables.var
我所知道的最好的方法是创建您自己的 Settings 类并对其进行序列化/反序列化以便读/写您的应用程序。设置。
您也可以使用管理员。您网站的页面以将所有设置保存到其中。
在您的情况下,最好使用数据库来保存所有设置。
The best approach I know is to create your own Settings class and serialize/desiarilze it in order to read/write your app. settings.
Also you can use Admin. page of your website to save all settings into it.
May be in your case is better to use a database to keep all settings there as well.