代码之家  ›  专栏  ›  技术社区  ›  Rez.Net

如何设置Web。配置转换以满足本地和生产配置?

  •  4
  • Rez.Net  · 技术社区  · 11 年前

    我有一个两难的问题,那就是必须为网络设置不同的连接字符串。在我的本地机器上进行配置,并进行一个版本转换,使生产二进制文件使用该机器。配置。

    因此,我的Visual Studio解决方案中包含以下文件:

    Web.Config Web.Debug.Config Web.Release.Config

    在网络中。config我删除并添加了新的连接字符串。

    <remove name="connstring">
    <add name="connstring" ConnectionString="blahblah" />
    

    我想做的是在最终的网页上什么都没有。config(通过TFS构建)部署到web服务器,以便我的web应用程序可以使用机器中的任何内容。配置。

    我该怎么做?

    1 回复  |  直到 11 年前
        1
  •  0
  •   DrewTheRat    11 年前

    可以使用RemoveAll变换属性删除配置设置。假设您正在部署Release构建配置,则可以生成一个完全空的web。通过在Web.Release.config中放入以下内容进行配置:

    <?xml version="1.0" encoding="utf-8"?>
    <configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform" xdt:Transform="RemoveAll" />
    

    此结果网页。config将在顶部显示XML声明,而没有其他内容。

    如果只想删除某些配置子节,请将RemoveAll变换属性添加到要删除的节。例如,以下Web.Release。配置将删除所有应用程序设置:

    <?xml version="1.0" encoding="utf-8"?>
    <configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
      <appSettings xdt:Transform="RemoveAll" />
    </configuration>
    

    查看完整信息 Transformation Syntax Documentation 了解更多详情。