在处理对连接字符串的多个引用时,部署.net web应用程序总是很痛苦吗

本文关键字:应用程序 web net 部署 痛苦 连接 处理 字符串 引用 | 更新日期: 2023-09-27 18:22:00

部署新版本的web应用程序花费的时间太长。我知道有更好的方法可以做到这一点,但我不知道它是什么。

现在,我在一个解决方案中有三个项目,它们都有自己的web.config或app.config,每个项目都包含两个连接字符串。

在每个web.config中,都有以下内容:

sessionState mode="InProc" customProvider="DefaultSessionProvider">
  <providers>
    <add name="DefaultSessionProvider" type="System.Web.Providers.DefaultSessionStateProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="LocalConnection" />
  </providers>
</sessionState>

请注意,它现在已设置为LocalConnection。如果我发布到Azure,我必须手动将其更改为"RemoteConnection"。每次。

我在整个应用程序的几个地方也有这样的代码:

if (!WebSecurity.Initialized)
            WebSecurity.InitializeDatabaseConnection("LocalConnection",
                 "UserProfile", "UserId", "UserName", autoCreateTables: true);

这意味着,对于每次这样的调用,我必须在发布时手动更改为"RemoteConnection"。

同样在我的dbContext的空构造函数中,我调用:

public AppDbContext()
        : base("name=LocalConnection")
    {
    }

还有一个手动更新需要在发布之前完成。然后,当我回到本地测试时,所有这些都必须手动恢复。

我该怎么做才能让这件事不那么乏味?

在处理对连接字符串的多个引用时,部署.net web应用程序总是很痛苦吗

Web.config转换如何如果在Visual Studio中展开Web.config,您将看到另外两个文件:Web.Debug.config和Web.Release.config。您可以添加更多配置,例如Web.Taging.config.