繁体   English   中英

有点混淆ASP.NET MVC区域路由

[英]A wee bit confused about ASP.NET MVC Areas routing

如果我在我唯一的区域中定义了以下路线: -

context.MapRoute(
    "Search_default",
    "Search/{controller}/{action}/{id}",
    new {controller = "Search", action = "Index", id = UrlParameter.Optional}
    );

我在SearchController有以下操作方法...

public ViewResult Index(string query, string prefs) {..}
public PartialViewResult Foo(SearchPreferences searchPreferences) { .. }

如果一个人要在他们的浏览器中手动输入路线,那么预期的路线会是什么?

(我对路线AREA和路线CONTROLLER名称感到困惑。看看它们是否存在于URL中)。

我相信以下路线会解决:

/Search => SearchController.Index(null, null)
/Search/Search => SearchController.Index(null, null)
/Search/Search/Index => SearchController.Index(null, null)
/Search/Search/Index/1 => SearchController.Index(null, null) // id maps to nothing

/Search/Search/Foo => SearchController.Foo(new SearchPreferences { })
/Search/Search/Foo/1 => SearchController.Foo(new SearchPreferences { id = 1 })

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM