1

如何阅读 web.config 中的个人部分?

<MyPersonalSection>
    <add name="toto" enable="true" URL="http://localhost:43242" />
    <add name="titi" enable="false" URL="http://localhost:98762" />
<MyPersonalSection/>

我想使用名称值获取启用值和/或 URL 值。

我也有这个错误:无法识别的配置部分 MyPersonalSection

我一直在尝试

var config = ConfigurationManager.GetSection("MyPersonalSection");

4

3 回答 3

3

是一个很酷的例子。

于 2012-07-26T12:37:14.280 回答
0

您无需编写自定义配置处理程序即可获得所需内容。如果您只需要键值条目,可以使用内置的配置处理程序。但是,您必须使用key代替namevalue代替URL. 例如:

<configuration>
 <configSections>
  <section name="MyPersonalSection" type="System.Configuration.NameValueSectionHandler" />
 </configSections>
<MyPersonalSection>
    <add key="toto" value="http://localhost:43242" />
    <add key="titi" value="http://localhost:98762" />
</MyPersonalSection>
</configuration>

您可以通过代码访问它们:

var myValues = ConfigurationSettings.GetConfig("MyPersonalSection") as NameValueCollection;
var url = myValues["toto"];

我建议以一种明确值应该是什么的方式命名您的键,例如“totoUrl”和“titiUrl”。

如果您想要字符串值对以外的内容,则必须编写自己的自定义处理程序。

于 2012-07-26T13:00:08.217 回答
0

您可以使用您需要的密钥在 web.config 中添加 appSettings 部分。例如:

<configuration>
   <appSettings>
      <add key="FirstUrl" value="http://localhost:43242"/>
      <add key="SecondUrl" value="http://localhost:98762" />
    </appSettings>
 ...
</configuration>

所以,由于 aspx.cs 文件,你可以声明指令

using System.Configuration;

稍后,您可以通过这种方式检索 FirstUrl 值:

 var myUrl = ConfigurationManager.AppSettings["FirstUrl"];
于 2016-04-09T02:10:46.100 回答