在 web.config 中管理配置

3
我有一个asp.net网站应用程序。我想将特定部分单独分离出来,例如appsettings,并将其放在一个单独的配置文件中。我如何管理asp.net应用程序的两个配置文件?
根据示例,只有appsettings在部署期间出现。我可以将此部分添加到web.config中并拥有1个配置文件,或者将appsettings部分作为单独的文件。有没有更简洁的方法?
2个回答

3

是的,您可以从web.config中提取部分内容。例如,对于连接字符串,假设您有以下内容:

```xml ```

您可以使用以下代码来访问连接字符串:

```csharp string connectionString = ConfigurationManager.ConnectionStrings["MyDB"].ConnectionString; ```

这将返回名为"MyDB"的连接字符串。

<?xml version="1.0"?>
<configuration>
  <connectionStrings>
    <add name="MyEntities" connectionString="my connection string" providerName="System.Data.EntityClient" />
  </connectionStrings>
</configuration>

你可以将连接字符串部分分离到单独的文件中。这样你的web.config就变成了:
<?xml version="1.0"?>
<configuration>
  <connectionStrings configSource="ConnectionString.Config" />
</configuration>

连接字符串配置文件将会有以下内容:

<connectionStrings>
  <add name="MyEntities" connectionString="my connection string" providerName="System.Data.EntityClient" />
</connectionStrings>

1
在您的web.config文件中,将appsettings部分替换为以下内容:
<appSettings file="settings.config">
 </appSettings>

并创建一个名为“settings.config”的新配置文件,其中包含您的应用程序所有设置,如下面的示例所示:

<appSettings>
 <add key="Setting1" value="This is Setting 1" />
 <add key="Setting2" value="This is Setting 2" />
 <add key="ConnectionString" value="This is a ConnectString" />
</appSettings>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接