【问题标题】:How to customize publication in ASP.NET?如何在 ASP.NET 中自定义发布?
【发布时间】:2010-11-04 16:19:07
【问题描述】:

我正在从事一个相当新的项目,我们从头开始。所以不仅Web应用本身需要开发,网站发布、Web服务器配置等整个过程都需要从头开始。

这个问题可能更适合于 serverfault,但这真的取决于答案。所以,让我们试一试吧。

我曾经通过 VS2008 发布过我们的网站(右键单击网站,发布网站,等待...完成)我需要以某种方式调整流程并触发其他一些任务,例如: - 将一些文件夹从我的 dav 机器复制到 Web 服务器 - 删除测试数据库并让一些脚本在其上运行 - 也许还有一些我现在不记得了。

我正在阅读最明显的解决方案,例如 MSBuild、Powershell 和 VSTS2008,但我真的不想深入研究它们,直到我真正知道这些工具实际上可以解决我的问题。所以伙计们,我很确定你们中的很多人都对这些工具有很多了解,或者知道更好的工具。请告诉我。我真的很感激。

这就是我生活的环境: - 对比 2008 - VSTS 2008 - SQL Server 2008 - Windows Server 2008

更新:感谢迄今为止提供的出色答案,但我特别在寻找集成到 Visual Studio Team Foundation Server 中的解决方案,因为我们已经将它用于源代码控制。

干杯, 史蒂夫

【问题讨论】:

标签: asp.net powershell msbuild publishing


【解决方案1】:

我们使用 Subversion 部署我们的 Web 应用程序,并且对它非常满意。

构建服务器编译应用程序,将其复制到部署目录并检查对 Subversion 存储库的更改。好吧,我承认这不是微不足道的,但值得在这里投资......因为在服务器上部署现在非常容易。优点是:

  • 仅将必要的文件复制到服务器,停机时间最短(使用 svn update)
  • 验证部署到服务器的版本是小菜一碟,并且很容易在多个 Web 服务器上拥有一致的版本
  • 如果您搞砸了,只需单击 2 次即可恢复到以前的版本
  • 它负责在您部署新版本时删除文件。在旧版本上复制 Web 应用程序可能会留下潜在的危险文件
  • web.config 中的修改不会被部署覆盖,它们会被合并。这真的是一大优势

【讨论】:

  • 感谢您的回答,但我不想再将另一个工具扔进池中。我们使用 Team Foundation Server 作为源代码控制。
【解决方案2】:

您可以设置构建前和构建后事件,并且可以让这些事件触发脚本来完成您的任务。

【讨论】:

  • 任何有教程的好网站可以指向,我在哪里可以找到更多信息?
【解决方案3】:

您可能会查看 IIS Web Deployment Tool 是否适合您的场景;它允许您一起发布您的网站、配置设置、数据库等。这也将集成到 Visual Studio 2010 中。

【讨论】:

  • 我看了一眼,但该产品处于某种测试阶段。所以,在开发过程的这个重要时刻,我不想与 Beta 作斗争。无论如何感谢您的回答。
猜你喜欢
  • 2019-08-01
  • 1970-01-01
  • 1970-01-01
  • 2014-04-05
  • 1970-01-01
  • 2018-10-17
  • 1970-01-01
  • 2014-12-16
  • 1970-01-01
相关资源
最近更新 更多