C# 在路由属性中添加默认操作
如何使用路由属性设置默认操作C# 在路由属性中添加默认操作,c#,asp.net-mvc,asp.net-core,C#,Asp.net Mvc,Asp.net Core,如何使用路由属性设置默认操作 [Route("cars/[action]")] public class CarsRegistrationController : Controller { public IActionResult Index() { ... } } cars/index工作,但如果我转到/cars(不输入操作名称),我希望它重定向到默认操作索引/cars/index 我尝试将路由修改为:不走运,如何修复语法 [Route("cars/{action=index
[Route("cars/[action]")]
public class CarsRegistrationController : Controller
{
public IActionResult Index()
{ ... }
}
cars/index工作,但如果我转到/cars(不输入操作名称),我希望它重定向到默认操作索引/cars/index
我尝试将路由修改为:不走运,如何修复语法
[Route("cars/{action=index}")]
[Route("cars/[action:index]")]
正如您在ASP.NET Core()的文档中所读到的,在控制器上放置路由意味着它将在其操作上与路由相结合
[Route("[cars]")]
public class CarsRegistrationController : Controller
{
[Route("~/cars")] // Matches "~/cars"
[Route("")] // Matches "~/cars/Index"
public IActionResult Index() => View();
}
正如您在ASP.NET Core()的文档中所读到的,在控制器上放置路由意味着它将在其操作上与路由相结合
[Route("[cars]")]
public class CarsRegistrationController : Controller
{
[Route("~/cars")] // Matches "~/cars"
[Route("")] // Matches "~/cars/Index"
public IActionResult Index() => View();
}
当使用
[路线(“cars/{action=index}”)]
时,您有什么问题?这似乎对我有效。@KirkLarkin I get error:error:属性route“cars/{action=index}”不能包含名为“{action}”的参数。在路由模板中使用“[action]”插入值“Index”。我还尝试了[Route(“cars/[action=index]”)错误:在处理模板“cars/[action=index]”时,找不到标记“action=index”的替换值使用[Route(“cars/{action=index}])]
时出现了什么问题?这似乎对我有效。@KirkLarkin I get error:error:属性route“cars/{action=index}”不能包含名为“{action}”的参数。在路由模板中使用“[action]”插入值“Index”。我还尝试了[Route(“cars/[action=index]”)错误:在处理模板“cars/[action=index]”时,找不到标记“action=index”的替换值请注意,我的控制器名称是“CarsRegistrationController”,但我要使用的路由是“cars”,您能修改您的答案代码使其与我的corntoller一起工作吗,code,我不能让它工作请注意,我的控制器名称是“CarsRegistrationController”,但我想使用的路线是“cars”,你能修改你的答案代码使它与我的corntoller一起工作吗,代码,我不能让它工作