我创建了两个“ asp.net core mvc”项目,它们分别可以正常运行。当我启动它们时,每个人在其“ startup.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 }
);
此图片可能有帮助:
我的问题与此类似,但没有人完全回答: this link
vs2017 .net核心中的RouteConfig.cs文件在哪里?
答案 0 :(得分:2)
在公共类库中创建扩展方法。
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Routing;
public static IRouteBuilder MapCommonRoutes(this IRouteBuilder routes, string projectRoute)
{
routes.MapRoute(
name: "default",
template: "/" + projectRoute + "/{controller=Home}/{action=Index}/{id?}");
// you can add more MapRoute...
return routes;
}
并在startup.cs中使用此扩展方法
对于项目1
app.UseMvc(routes =>
{
routes.MapCommonRoutes("Project1");
});
对于项目2
app.UseMvc(routes =>
{
routes.MapCommonRoutes("Project2");
});