【问题标题】:ReplacableToken_ when using web.config transform?使用 web.config 转换时的可替换令牌_?
【发布时间】:2011-04-07 11:44:03
【问题描述】:

我有一个带有 2 个转换的 web.config - 用于调试和发布。

web.config:

<connectionStrings>
    <clear />
    <add name="StrName" connectionString="data source=.\sqlexpress;User Id=sa;Password=pass;Database=SocialBot;"
                providerName="System.Data.SqlClient" />
</connectionStrings>

我刚刚复制了给出的示例并将名称替换为 StrName。我最终得到:

<add name="StrName" connectionString="$(ReplacableToken_SocialBotConnectionString-Web.config Connection String_0)"
                providerName="System.Data.SqlClient" />

ReplacableToken_ 到底是什么?

我有另一个项目,它在那里没有问题。

【问题讨论】:

    标签: web-config


    【解决方案1】:

    如果您像我一样在尝试使用命令行中的 msbuild 自动化构建过程时遇到此问题,可以在此博客条目中找到正确答案:

    http://www.zvolkov.com/clog/2010/05/18/how-to-packagepublish-web-site-project-using-vs2010-and-msbuild/

    具体来说,需要设置的参数是:

    /p:AutoParameterizationWebConfigConnectionStrings=False
    

    当您发布到文件系统时,这很可能是 VS 代表您所做的事情

    【讨论】:

    • 正是我想要的!
    • 耶,有问题,找到我自己的答案!
    • 为了胜利而使用晦涩的命令行开关!感谢您发布除了链接之外的实际设置。这确实应该被标记为解决方案。
    • 死链接。至少您在答案中包含了设置:)
    • 终于有答案了!!你拯救了我的一天(或夜晚)!
    【解决方案2】:

    如果您想使用 Visual Studio 2010 进行构建,请将以下行添加到 .csproj 中的配置 PropertyGroup:

    <AutoParameterizationWebConfigConnectionStrings>False</AutoParameterizationWebConfigConnectionStrings>
    

    更多细节在这里: How to get rid of "$(ReplacableToken...)" in web.config completely

    【讨论】:

    • +1 这就是允许您单击“构建部署包”以获取转换后的 web.config 的原因。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-15
    • 2019-04-10
    • 1970-01-01
    • 2021-11-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多