我刚刚开始在我的ASP.NET MVC3应用程序中使用AttributeRouting。我从一开始就没有 Controller 。 (新的Empty MVC3应用程序)
然后我做了一个区域。 (称为:Documentation
)
然后,我添加了一个 Controller (称为:DocumentationController
)
然后,我就这样做了。
[RouteArea("Documentation")]
public class DocumentationController : Controller
{
[GET("Index")]
public ActionResult Index()
{
return View();
}
}
以下路线可行:/documentation/index
但是如何使这两条路线起作用?1-
/
2-/documentation
可以用AttributeRouting完成吗?更新:
我知道如何使用默认的ASP.NET MVC3结构等来执行此操作。我要尝试执行的操作是通过AttributeRouting来解决此问题。
最佳答案
我假设您想将“/”和“/documentation”映射到DocumentationController.Index,是吗?如果是这样,请执行以下操作:
[RouteArea("Documentation")]
public class DocumentationController : Controller
{
[GET("Index", Order = 1)] // will handle "/documentation/index"
[GET("")] // will handle "/documentation"
[GET("", IsAbsoluteUrl = true)] // will handle "/"
public ActionResult Index()
{
return View();
}
}
一点解释:
希望这可以帮助。如果我对您尝试做的事情的最初假设不正确,请发表评论。
关于c# - 尝试使用AttributeRouting创建默认的ASP.NET MVC路由,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9346926/