在ASP.NET Core 2.1 MVC中,可以使用以下步骤来实现子站点路由:
app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}/{id?}");
});
public class SubSiteController : Controller
{
public IActionResult Index()
{
return View();
}
public IActionResult About()
{
return View();
}
}
在Views文件夹中创建与子控制器对应的文件夹SubSite,并在其中创建Index.cshtml和About.cshtml视图文件。
在Startup.cs文件的ConfigureServices方法中,使用AddMvc方法添加MVC服务:
services.AddMvc();
[Area("SubSite")]
public class SubSiteController : Controller
{
// ...
}
这样就可以实现子站点的路由了。在浏览器中访问http://localhost:port/SubSite将会调用SubSiteController的Index方法,并渲染SubSite文件夹下的Index.cshtml视图。同样,访问http://localhost:port/SubSite/About将会调用SubSiteController的About方法,并渲染SubSite文件夹下的About.cshtml视图。