ASP.NET中的多个web配置文件

本文关键字:web 配置文件 NET ASP | 更新日期: 2023-09-27 18:25:35

是的,同一主题有多个帖子。我的问题的解决方案之一是多个web.config文件,但我不确定它是否有效。

问题:

我有一个asp.net项目。我有两个客户端(有自己的存储和数据库),我需要在它们上部署应用程序。存储和数据库只是两个例子,但还有许多其他客户端特有的设置,可以在应用程序设置中进行管理。无论我对项目代码做什么更改,我都需要为两个客户端进行部署。

目前我的网络配置如下:

<!-- GHR Settings -->
  <connectionStrings>
    <add name="DefaultConnection" connectionString="conn-string" providerName="System.Data.SqlClient" />
  </connectionStrings>
  <appSettings>
    <add key="StorageConnectionString" value="DefaultEndpointsProtocol=https;AccountName=<acntName>;AccountKey=<acntKey>" />
    <add key="StorageURL" value="<storageurl>" />
    <add key="ProfileURL" value="<ProfileURL>" />
    <add key="GenericURL" value="<GenericURL>" />
    <add key="IDocURL" value="<IDocURL>" />
    <add key="LogosURL" value="<LogosURL>" />
    <add key="DocsURL" value="<DocsURL>" />
    <add key="DefaultPassword" value="pass123" />
  </appSettings>
  <!-- TP Settings -->
  <!--
  <connectionStrings>
    <add name="DefaultConnection" connectionString="conn-string" providerName="System.Data.SqlClient" />
  </connectionStrings>
  <appSettings>
    <add key="StorageConnectionString" value="DefaultEndpointsProtocol=https;AccountName=<acntName>;AccountKey=<acntKey>" />
    <add key="StorageURL" value="<storageurl>" />
    <add key="ProfileURL" value="<ProfileURL>" />
    <add key="GenericURL" value="<GenericURL>" />
    <add key="IDocURL" value="<IDocURL>" />
    <add key="LogosURL" value="<LogosURL>" />
    <add key="DocsURL" value="<DocsURL>" />
    <add key="DefaultPassword" value="pass123" />
  </appSettings>
    <add key="DefaultPassword" value="pass123" />
  </appSettings> -->

正如你所看到的,我已经复制了设置并评论了一个客户端的设置,部署在服务器上。然后我为其他客户做这件事。

这可以正常工作,但在发布过程中维护过多,容易出错。

请提出正确的做法。

谢谢。

ASP.NET中的多个web配置文件

在我的案例中,我所做的是为DB connectionstring创建一个单独的配置文件,并在web.config中引用该文件。通过这种方式,您可以为两个客户端拥有相同的web.config,并且只需要发送connectionstring.config文件一次!

在web.config 中

<connectionStrings configSource="ConfigFiles'ConnectionStrings.config" />

在该文件中放入连接字符串

部分也可以执行相同的操作