Tan*_*uyB 4 c# asp.net-core-mvc asp.net-core
似乎无法让我的默认路由在ASP.NET Core 2.0中运行,我忽略了什么?
Startup.cs
public class Startup
{
public IConfiguration Configuration { get; set; }
public Startup(IConfiguration configuration)
{
Configuration = configuration;
}
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc();
}
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
app.UseMvc(routes =>
{
routes.MapRoute("default", "{controller}/{action}/{id?}", new { controller = "Home", action = "Index" });
});
}
}
Run Code Online (Sandbox Code Playgroud)
HomeController.cs
[Route("[controller]")]
public class HomeController : Controller
{
public IActionResult Index()
{
return View();
}
}
Run Code Online (Sandbox Code Playgroud)
当我浏览网址时,没有任何反应,没有重定向到主页?
Shy*_*yju 13
只需删除[Route("[controller]")]
控制器上的装饰即可.
public class HomeController : Controller
{
public IActionResult Index()
{
return View();
}
}
Run Code Online (Sandbox Code Playgroud)
于默认的路由,你的注册UseMvc
方法与传统的路由模式,现在它应该工作yourBaseUrl
,并yourBaseUrl\Home
与yourBaseUrl\Home\Index
通常,您使用[Route("[controller]")]
控制器级别上的属性作为该控制器上所有路由的路由前缀,以便为操作方法创建自定义属性路由定义.
[Route("[controller]")]
public class HomeController : Controller
{
[Route("myseofriendlyurlslug")]
public IActionResult Index()
{
return View();
}
}
Run Code Online (Sandbox Code Playgroud)
现在可以通过访问您的操作方法了 yourBaseUrl/Home/myseofriendlyurlslug
请记住,在使用上述属性路由时,传统的路由模式将不起作用.
归档时间: |
|
查看次数: |
3115 次 |
最近记录: |