从不同的配置文件中获取appSettings的键值

时间:2012-10-09 06:03:34

标签: asp.net web-config

我有一个名为Refer.config的配置文件,其中包含appSettings:

<?xml version="1.0"?>
<configuration>
<appSettings>
    <add key="Database" value="CouchDB"/>
  </appSettings>
</configuration>

现在在web.config中我将其引用为:

<appSettings file="C:\Users\312171\Documents\Visual Studio 2008\WebSites\WebSite4\Refer.config">

  </appSettings>

现在在cs文件中我试图像这样访问appSettings的键值:

protected void Button2_Click(object sender, EventArgs e)
    {
        string filetype = ConfigurationManager.AppSettings["Database"];
        testvalue.Text = string.Format("The key value is:",filetype);
    }

但它没有返回关键值...... 我犯了什么错误?请帮帮我......

2 个答案:

答案 0 :(得分:3)

如果您使用的是.net 2.0或更高版本,则必须使用configSource属性。

<appSettings configSource="Refer.config">
</appSettings>

请注意,路径必须是相对的。

File应该采用相对路径

  

File指定包含custom的外部文件的相对路径   应用配置设置。指定的文件包含   在和中指定的相同类型的设置    元素并使用与那些相同的键/值对格式   元件。

     

指定的路径是相对于主配置文件的。为一个   Windows窗体应用程序,这将是二进制文件夹(例如   / bin / debug),而不是应用程序配置文件的位置。   对于Web窗体应用程序,路径相对于应用程序   root,web.config文件所在的位置。

     

请注意,如果指定的文件可以,运行时将忽略该属性   找不到。

答案 1 :(得分:0)

在web.config中尝试这样做我的答案......

<appSettings file="Refer.config"/>