如何在同一解决方案中使用2个单独的控制器类

问题描述

我有一个大型解决方案,其中包含2个Web应用程序。
在将解决方案部署到环境中时遇到一个问题,因为它被设置为一次只能使用一个Web应用程序。

在相同的解决方案中,有什么方法可以使用两个控制器,它们分别位于不同的项目和不同的命名空间中吗?

基本上,我需要部署的项目才能在另一个项目中使用控制器并与之一起工作。
例如:
当我在本地运行DeployProject.UI时,是否可以调用SeperateProject.UI中的控制器动作?
并假设404localhost:57524的项目URL,并调用以下URL而不会出现DeployProject错误

localhost:57524/SeperateProjects/DefaultControllerAction/?id=1

  • DeployProject.UI

    • Controllers文件
      • 控制器
  • SeperateProject.UI

    • SepControllers文件
      • 控制器

我尝试更改routeconfig.cs
(位于DeployProject.UI/App_Start内)

public class RouteConfig
{
 public static void RegisterRoutes(RouteCollection routes)
  {
    routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
    
    routes.MapMvcAttributeRoutes();

    routes.MapRoute(
    name: "Default",url: "{controller}/{action}/{id}"
    defaults: new {controller = "Home",action = "Index",id = UrlParameter.Optional}
    );

    routes.MapRoute(
    name: "SepController",url: "SepController/{action}/{id}"
    defaults: new {controller = "SepController",id = UrlParameter.Optional,namespace: new[] { "SeperateProjects.UI.Controllers"}
    );
 }
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)