Asp.net MVC 多web项目解决方案

问题描述

我有一个包含两个 MVC Web 项目的解决方案。

在主项目中,AdminController 按预期工作(当我点击管理/操作时,它会在主项目中查找视图并相应地工作)。

在第二个项目中,我有 SiteController。当我点击 Site/Action 时,它会在主项目中查找视图,因为它在主项目中不可用并抛出错误

我想通过主项目访问第二个项目控制器,但不知道如何实现。

我不想在主项目中使用区域功能SiteController 应该在第二个项目中,并且应该可以通过主项目访问。

解决方法

您有多种解决方案:

  1. 在项目 1 中包含项目 2 的控制器。这与区域不同,但您必须在项目 1 中添加对项目 2 的引用。asp-net-mvc-6-discovers-controllers
  2. 如果 1 不是一个选项,那么您可以直接在本地 IIS 上进行调试,而无需使用不同站点名称的端口但是。这是有道理的,因为 ARE 不同的网站。如果不是,则它们应该托管在同一个项目中(请参阅第一个解决方案)。
  • 转到项目属性
  • 选择网站
  • 在服务器部分选择本地 iis
  • 设置项目网址

enter image description here