gpt4 book ai didi

c# - 为什么我的应用程序不读取我的 MyApplication.dll.config 文件?

转载 作者:太空宇宙 更新时间:2023-11-03 11:44:13 27 4
gpt4 key购买 nike

我正在尝试将应用程序设置用于我正在处理的 C#.NET 项目。但我似乎无法让它返回默认值以外的任何内容。通过项目属性,我添加了一个设置 DBConnectionString,并将其值设置为我要使用的连接字符串。其范围设置为“应用程序”。

这样做会创建许多文件,包括 Settings.settings、Settings.Designer.CS 和 app.conifg。据我了解,这两个 Settings.* 文件定义了一个派生自 ApplicationSettingsBase 的自定义 Settings 类。 Settings 类具有自定义的、类型安全的属性,可用于设置和检索每个设置。 app.config 文件是一个存储实际设置值的 XML 文件。

当我构建我的项目时,app.config 文件似乎作为 MyApplication.dll.config 复制到目标目录。我的程序运行良好并且能够使用默认连接字符串。

接下来,我尝试编辑 MyApplicaiton.dll.config 文件以更改连接字符串。我再次运行我的程序,但它继续使用默认值。我注意到在我的 Settings.Designer 文件中有一个带有原始默认字符串的 DefaultSettingValueAttribute。我尝试删除此属性,但是当我尝试检索连接字符串设置时,它只返回 null。

这是我用来读取连接字符串的代码。

string conn = Properties.Settings.Default.DbConnectionString

我做错了什么?我怎样才能让它返回设置文件中的值而不是默认值?


更新:

抱歉,我应该提到这一点。我实际上是在通过公共(public) API 为另一个应用程序编写插件。所以我的项目是 DLL 而不是 EXE。

最佳答案

您不能从 *.dll.config 文件中读取设置。如果您的库需要任何特殊设置,您需要将它们放入您的 app.configweb.config 文件中。

编辑:您可以在主应用程序或网络配置文件中包含外部配置文件。看here了解详情。

This问题讨论了如何管理大型项目的配置文件。

关于c# - 为什么我的应用程序不读取我的 MyApplication.dll.config 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3836386/

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