在ASP.Net Core 2 MVC中,路由是用来将URL映射到相应的控制器和操作方法上的机制。下面是一种解决方法,包含了一些代码示例:
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc();
services.AddRouting();
}
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
app.UseRouting();
app.UseEndpoints(endpoints =>
{
endpoints.MapControllerRoute(
name: "default",
pattern: "{controller=Home}/{action=Index}/{id?}");
});
}
上述代码中的路由模板"{controller=Home}/{action=Index}/{id?}"将URL中的控制器、操作方法和可选的id参数映射到相应的控制器和操作方法上。
public class HomeController : Controller
{
public IActionResult Index()
{
return View();
}
public IActionResult Details(int id)
{
// 根据id查询数据
// 返回视图或其他操作
}
}
上述代码中的Index方法和Details方法分别映射到默认路由中的Index和Details操作方法。
Welcome to my website!
上述代码中的Index.cshtml视图文件将在访问控制器的Index方法时显示。
这就是使用ASP.Net Core 2 MVC中的路由的解决方法,它可以将URL映射到相应的控制器和操作方法上。注意,在实际应用中,可能需要根据具体需求进行更详细的配置。