【问题标题】:How can I remove connection strings from a web deploy package?如何从 Web 部署包中删除连接字符串?
【发布时间】:2015-03-18 20:19:27
【问题描述】:

我有几个使用相同数据库的 Web 应用程序。我将它们全部部署在 IIS 上的同一个“网站”中。连接字符串将在“网站”级别设置并在“应用程序”中继承。当我制作发布包时,它会为我提供 web.config 中的连接字符串列表,但不允许我选择删除它们。我必须更改值或将其留空(使用本地 web.config 中的值)。

我们的目标是最终得到一个“干净的”包,我可以在不同的“网站”上发布它,这些“网站”有自己的连接字符串(例如生产服务器、登台和开发)。我希望能够将包部署到暂存环境进行测试,并在测试后将相同的包部署到生产环境。

【问题讨论】:

    标签: asp.net-mvc visual-studio webdeploy


    【解决方案1】:

    我会使用 web.config 转换来解决它。然后,您可以为 web.debug.config / web.production.config / we.test... 设置不同的连接字符串,依此类推。您可以在连接字符串或整个元素中进行替换。 这是一个开始:https://msdn.microsoft.com/en-us/library/dd465326%28v=vs.110%29.aspx

    【讨论】:

    • 如果您为每个环境创建不同的配置,您(或像 Octopus deploy 这样的工具)将在部署时执行转换。您的包(在构建时创建)将包含所有配置转换,但它将在部署时应用。也许不是您对“白板”的想法,但它确实有效。
    猜你喜欢
    • 1970-01-01
    • 2014-09-07
    • 1970-01-01
    • 2014-02-12
    • 2013-10-06
    • 1970-01-01
    • 1970-01-01
    • 2015-10-07
    • 2014-10-02
    相关资源
    最近更新 更多