gpt4 book ai didi

.net - AppSettings 与 applicationSettings (.NET app.config/Web.config) 的优缺点

转载 作者:行者123 更新时间:2023-12-01 22:59:12 24 4
gpt4 key购买 nike

在开发 .NET Windows 窗体应用程序时,我们可以在以下选项中进行选择 App.config标签来存储我们的配置值。哪个更好?

<configuration>

<!-- Choice 1 -->
<appSettings>
<add key="RequestTimeoutInMilliseconds" value="10000"/>
</appSettings>

<!-- Choice 2 -->
<configSections>
<sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c5612342342" >
<section name="Project1.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c5612342342" requirePermission="false" />
</sectionGroup>
</configSections>
<applicationSettings>
<Project1.Properties.Settings>
<setting name="TABLEA" serializeAs="String">
<value>TABLEA</value>
</setting>
</Project1.Properties.Settings>
</applicationSettings>

</configuration>

最佳答案

基本<appSettings>更容易处理 - 只需打个耳光 <add key="...." value="..." />进入,你就完成了。

缺点是:没有类型检查,例如您无法安全地假设您想要配置的号码确实是一个号码 - 有人可以将字符串放入该设置中..... 您只需以 ConfigurationManager["(key)"] 访问它然后由你来决定你在处理什么。

此外,随着时间的推移,<appSettings>如果您的应用程序的许多部分开始将内容放入其中(还记得旧的 windows.ini 文件吗?:-)),可能会变得相当复杂和困惑。

如果可以,我更愿意并推荐使用您自己的配置部分 - 使用 .NET 2.0,它真的变得非常简单,这样,您可以:

  • a) 在代码中定义您的配置设置并使它们类型安全
    并检查
  • b) 您可以将您的设置与所有人完全分开
    别人的。你也可以重用你的配置代码!

  • 在 CodeProject 上有一系列非常好的文章来揭开 .NET 2.0 配置系统的神秘面纱:
  • Unraveling the mysteries of .NET 2.0 configuration
  • Decoding the mysteries of .NET 2.0 configuration
  • Cracking the mysteries of .NET 2.0 configuration

  • 强烈推荐! Jon Rista 出色地解释了 .NET 2.0 中的配置系统。

    关于.net - AppSettings 与 applicationSettings (.NET app.config/Web.config) 的优缺点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/460935/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com