错误的应用配置文件?

时间:2013-02-14 19:53:15

标签: c# asp.net

我有一个具有此代码功能的类库:

this.apikey = ConfigurationManager.AppSettings["ApiKey"];

当我在控制台应用程序中调用此函数时,它表示AppSettings没有密钥。它还声明连接字符串是aspnet ...而我的是sqlserver。因此,即使我在库函数中调用它,它肯定不会读取我的库应用程序配置。

这是正常还是我做错了什么?

我希望避免制作和解析xml并重新发明轮子。

由于

2 个答案:

答案 0 :(得分:3)

  

这是正常还是我做错了什么?

这是正常的,你 做错了什么。

库通常没有自己的配置 - 它取决于正在运行的应用程序的配置。

如果您将appSettingsconnectionStrings添加到应用程序配置中,则一切正常。


换句话说,当加载应用程序并加载它使用的库时,将读取应用程序配置 - 不会读取其他配置文件。在调用ConfigurationManager的静态方法时,加载的配置就是有效的。

加载特定配置文件的方法,但这不是默认行为。

答案 1 :(得分:0)

你在某个地方肯定是错误的。可能是您在appSettings以外的不同部分编写了密钥。只需检查它,如果它是正确的,那么你需要重新发明轮子如下:

XDocument.Load(HttpContext.Current.Server.MapPath("~/web.config"));

在使用System.Web

之前,请务必在项目中添加HttpContext命名空间