【问题标题】:Is it possible to host a bin directory within an MVC application Areas folder?是否可以在 MVC 应用程序区域文件夹中托管 bin 目录?
【发布时间】:2017-01-25 10:13:58
【问题描述】:

我有一个 MVC 4 应用程序,它在主应用程序的 Areas 文件夹中托管其他 MVC 应用程序:

  • 网页界面
    • 区域
      • 应用程序 1
        • 内容
        • 观看次数
      • 应用程序 2
        • 内容
        • 观看次数
      • MainApp.dll
      • Application1.dll
      • Application2.dll
    • 配置
    • 观看次数
    • 图片
    • 其他顶级应用程序文件夹

这些应用程序共享有自己的一组依赖项,这些依赖项当前都驻留在主 bin 目录中。这给我们带来了问题,即一个应用程序需要更新版本的包,迫使我在第二个应用程序中升级包。在我看来,解决这个问题的方法是通过在 Areas 文件夹中的每个文件夹中都有一个 bin 目录来隔离依赖项,该文件夹可能包含不同版本的依赖项:

  • 网页界面
    • 区域
      • 应用程序 1
          • Application1.dll
          • DependencyV1.dll
        • 内容
        • 观看次数
      • 应用程序 2
          • Application2.dll
          • DependencyV2.dll
        • 内容
        • 观看次数
      • MainApp.dll
    • 配置
    • 观看次数
    • 图片
    • 其他顶级应用程序文件夹

除了运行多个版本的依赖项的风险之外——这可能吗?

【问题讨论】:

    标签: c# asp.net-mvc appdomain


    【解决方案1】:

    你不能做你想做的事。

    如果您所在区域有多个应用程序,那么就项目而言,它仍然是一个应用程序,因此您只有一个 bin 文件夹。

    IIS 可能允许您在虚拟目录中部署多个应用程序,但您需要分开您的区域(每个应用程序一个 VS 项目/csproj)。

    您将每个应用程序部署在不同的文件夹中,并在 IIS 中将网站配置为根应用程序,然后右键单击它以添加其他应用程序

    【讨论】:

    • 为每个插件创建应用程序域是否可行?
    猜你喜欢
    • 2012-02-19
    • 1970-01-01
    • 1970-01-01
    • 2022-07-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-13
    • 1970-01-01
    相关资源
    最近更新 更多