【问题标题】:Working with multiple branches in ASP .NET在 ASP .NET 中使用多个分支
【发布时间】:2010-12-18 19:56:50
【问题描述】:

我看过其他几篇与此类似的帖子(即https://stackoverflow.com/questions/5237/solutions-for-working-with-multiple-branches-in-asp-net),但我遇到的几个问题似乎与其他类似帖子不同。

我有一个使用本地主机虚拟目录的 ASP .NET 应用程序。代码中有几个地方我需要引用虚拟目录的名称,因此虚拟目录需要就位并正确命名才能正常工作。我还使用我的 httpd.conf 文件来格式化我的 URL 以避免混乱的查询字符串。

话虽如此,我刚刚发布了我的应用程序,现在只要实时代码中存在错误并且我不想上传开发代码,就需要为错误修复创建一个分支环境。

问题在于,我需要能够轻松地将我的分支代码与我的开发代码并行运行,而无需在每次我想加载我的分支代码时对 IIS 和配置文件进行大量工作。缺点是并行环境需要有虚拟目录并使用相同的 httpd.conf(用于 URL 格式化)。

我认为 Cassini 不会工作,因为我需要 SSL,当然...httpd.conf 和虚拟目录仍需要保留。

在我看来,完美的解决方案是使用相同的 httpd.conf 和相同的虚拟目录在 localhost 上运行一个并行网站……但我正在运行 XP Pro,它们不会“做”多个网站。

【问题讨论】:

  • @Joseph:好主意!该命令是否在 web.config 中?您是否知道一种确保它仅在调试模式下执行的方法?
  • @danswain:您提到在构建后事件中执行此命令。你知道构建事件命令的好资源吗?
  • 两个答案都非常有帮助。我想我将尝试弄清楚如何通过构建后事件更改 iis 虚拟目录目标路径,因为我可以在构建后事件中检查它是否处于调试模式。跨度>
  • 所以我花了一段时间才从构建后事件中弄清楚如何做到这一点,但我得到了它的工作。基本上,我创建了一个 VBScript 文件来更改元数据库,就像这个线程提到的那样:stackoverflow.com/questions/371207/…。我需要进行一些更改,以便无需创建新的虚拟目录,而是访问现有目录并更改 Path 属性。然后我从构建后事件(使用 cscript)中调用该脚本,并传递虚拟目录的名称和新路径作为参数。

标签: asp.net iis virtual branch directory


【解决方案1】:

让您的构建过程在每次构建运行时创建虚拟目录。

我为此使用了NantContrib's mkiisdir task

使用这种方法你不能同时运行多个分支,但是你可以通过构建你想要运行的分支来快速切换分支。

【讨论】:

    【解决方案2】:

    我会像上面那样做,但是您可以在构建事件后将其连接到您的解决方案中,但这不会是并行的,而是更快速的切换。我认为那里有一个注册表黑客可以在 iis 中获取多个站点,或者如果您通过脚本创建一个额外的站点它可以工作,那么它只是被锁定的 GUI。或者更好的解决方案是升级到 windows server,并为不同的端口构建不同的分支。

    【讨论】:

      猜你喜欢
      • 2020-06-30
      • 2017-10-14
      • 1970-01-01
      • 2015-11-08
      • 2021-09-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多