Asp.net mvc 在MVC应用程序中作为虚拟应用程序托管MVC应用程序

Asp.net mvc 在MVC应用程序中作为虚拟应用程序托管MVC应用程序,asp.net-mvc,iis,hosting,Asp.net Mvc,Iis,Hosting,背景 我们试图解决的问题与框架组件的共享有关。对于一个网站可能包含多个服务(所有服务共享根bin目录)的典型方法,使用相同框架组件的各种服务的部署包可能会相互覆盖 例如: 服务A和B彼此一无所知。脚本、样式表和视图位于它们自己的区域文件夹中 服务A使用框架组件X v1.0。这已经进入了测试期 服务B使用框架组件X v1.1。这已经进入测试阶段,将于10月份上线 由于延迟,服务A现在已准备就绪,可供部署使用。BETA版使用的同一个包(已签署)现在覆盖了Service A Framework Co

背景

我们试图解决的问题与框架组件的共享有关。对于一个网站可能包含多个服务(所有服务共享根bin目录)的典型方法,使用相同框架组件的各种服务的部署包可能会相互覆盖

例如:

  • 服务A和B彼此一无所知。脚本、样式表和视图位于它们自己的区域文件夹中
  • 服务A使用框架组件X v1.0。这已经进入了测试期
  • 服务B使用框架组件X v1.1。这已经进入测试阶段,将于10月份上线
  • 由于延迟,服务A现在已准备就绪,可供部署使用。BETA版使用的同一个包(已签署)现在覆盖了Service A Framework Component X v1.1,因为它们共享同一个bin目录
可能的解决方案

  • 从主服务器重新分支服务,更新依赖项并重新编译
  • 将每个服务独立托管到主“门户”网站,并处理跨站点请求
  • 将每个服务作为虚拟应用程序托管
  • 我们希望避免重新编译代码来更新依赖项,所以选项1是最不受欢迎的

    我们的地产相当复杂,从基础设施的角度来看,方案2将很困难。但是我们会考虑。

    选项3允许我们维护单一主机解决方案,是首选方案

    我的问题

  • 从技术上讲,是否可以使用IIS将MVC应用程序作为虚拟应用程序托管在MVC应用程序中?如果是,这是如何实现的

  • 有没有我错过的选择