【问题标题】:Installing patch for Asp.net web application setup为 Asp.net Web 应用程序安装安装补丁
【发布时间】:2011-09-08 04:19:08
【问题描述】:

我正在使用 Visual Studio Web 项目来安装我的 Web 应用程序并进行一些自定义,例如在安装期间修改 web.config 文件中的连接字符串。

现在,我的要求是为 web 应用程序创建一个补丁,以便下次 web 安装程序只更改更改的文件。

有没有人可以使用visualk studio 2010 ide 或任何其他方式。我们不能使用Installshield、wix、innosetup 等第三方产品。

请提出建议。

【问题讨论】:

    标签: c# installation patch


    【解决方案1】:

    Visual Studio 不支持安装项目的补丁。它仅支持重大升级。

    如果您真的不想使用其他设置创作工具,可以尝试手动创建补丁。您可以在此处阅读有关此内容的更多信息: http://msdn.microsoft.com/en-us/library/aa370578(VS.85).aspx

    但这并不容易。

    【讨论】:

      【解决方案2】:

      如果只是 Web 项目,我建议重新部署而不是打补丁。这意味着您只需在旧版本之上部署新版本的网站。

      除了一些非常全面的案例,该策略一直有效。我对所有项目都使用简单的 xcopy deploy。

      【讨论】:

      • 实际上我们的 asp.net web 应用程序是一个产品。所以我们必须将它作为安装程序提供,以便客户可以根据需要通过提供适当的输入来安装它,例如服务器名称、数据库名称等。将修改配置文件。所以我已经创建了这个 web 设置项目。现在他们不想创建 shole 应用程序的 web 设置项目。第一次发布后,他们只想部署更改的文件。
      • 是的,它让事情变得更加复杂。你可能需要它自己编写升级脚本;
      【解决方案3】:

      您可以编写一个迷你 C# 应用程序来执行此操作。您可以在配置中拥有程序集文件列表。在加载应用程序时,它会检查服务器和客户端文件之间的时间戳差异。找到更改后,迷你应用会推送更改文件。

      希望能解决你的问题

      【讨论】:

        【解决方案4】:

        可能有比使用安装程序更适合部署网站的解决方案。其中之一是Web Deploy

        它的主要目的是将 Web 应用程序部署到 IIS,它允许您通过简单的 UI 修改关键配置值。

        Web Deploy 适用于部署包;一个包含您的应用程序和一些元数据以帮助安装它的大 zip。在部署时,它会将已部署站点与部署包中的数据进行比较,以更新现有文件、添加新文件并删除过时文件。 您可以使用您最喜欢的构建服务器直接从 Visual Studio 和/或 MSBuild 构建部署包。

        当您需要经常部署或必须将部署委派给 IT 人员时,Web Deploy 非常有效。

        虽然自定义 Web 部署包有点繁琐,但您可能会发现我写的 blog post 对此很有用。

        对于更简单的情况,我推荐良好的版本控制实践和 xcopy 部署。 如果您标记部署到服务器的内容,则可以压缩自上次部署以来更改的文件并将其复制到您的服务器。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2010-09-14
          • 1970-01-01
          • 2022-07-06
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2019-01-11
          • 1970-01-01
          相关资源
          最近更新 更多