在ASP.NET Core中,Web应用程序和Razor类库项目之间的路由可以通过以下步骤实现:
首先,创建一个ASP.NET Core Web应用程序项目。
在Web应用程序的Startup.cs
文件中,使用UseEndpoints
方法配置路由。以下是一个示例:
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
// ...
app.UseEndpoints(endpoints =>
{
endpoints.MapControllerRoute(
name: "default",
pattern: "{controller=Home}/{action=Index}/{id?}");
});
}
上述示例将所有请求路由到默认的HomeController
的Index
方法,并可选地接受一个id
参数。
创建一个Razor类库项目。
在Razor类库项目中,创建一个Razor页面(.cshtml文件)。以下是一个示例:
@page "/about"
@model AboutModel
About
Welcome to the About page.
上述示例创建了一个名为About.cshtml
的页面,其URL路径为/about
。
MapRazorPages
方法将Razor类库项目的路由映射到Web应用程序中。以下是一个示例:public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
// ...
app.UseEndpoints(endpoints =>
{
endpoints.MapControllerRoute(
name: "default",
pattern: "{controller=Home}/{action=Index}/{id?}");
endpoints.MapRazorPages();
});
}
上述示例中的MapRazorPages
方法将Razor类库项目中的所有页面路由映射到Web应用程序中。
现在,当访问Web应用程序的URL路径为/about
时,将显示Razor类库项目中的About.cshtml
页面。
希望以上解决方法对您有所帮助!