在一个 ASP.NET MVC 5 解决方案中拥有单独的项目

Having separate projects in one ASP.NET MVC 5 solution

我想在一个 ASP.NET 解决方案中包含多个项目(例如 20 个)。所有项目都有自己的数据库、模型、视图和控制器。 你能告诉我该怎么做吗?网址会怎样?如果解决方案中有一个项目,它是这样的:

localhost:12345/Controller/View

当项目较多时,正确的配置是这样的吗? :

localhost:12345/ProjectName/Controller/View

还有一点,我打算使用 Identity 2.0 Framework。一个用户登录一次就可以登录所有项目吗?谢谢

您可以在一个解决方案中拥有任意数量的项目。只需右键单击项目资源管理器中的解决方案 window 和 select 添加新项目。在每个项目的属性中,将其根目录设置为/applicationname。

您需要查看 oAuth 的详细信息才能实施单点登录方案,我真的帮不了您,但这就是该实施背后的全部目的,因此绝对有可能。

Can you tell me how I can do that? And how the urls would be?

您的解决方案中可以有 'n' 个项目。如果您有三个项目 'Project1'、'Project2' 和 'Project3',您需要使用 RouteConfig.cs 来处理它。那么您各自的路由配置如下所示:

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

同样,

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

Is it possible for a user to be logged in in all projects when he logs in once?

是的,这绝对是可能的。 但是 ASP.NET开箱即用的身份不支持多个applications.Having说这是开发人员的任务通过Single Sign On

实现

Link : How to implement it

希望对您有所帮助!