在mvc3中用于控制器的命名约定

时间:2012-09-13 03:44:34

标签: asp.net-mvc-3

假设我们有一个名为filmstar.com的网站 什么应该是家庭控制器?它应该被命名为filmstar吗? 其他行动应该是什么?如果我们有电影明星/演员链接。目前当我点击演员链接时,它会打开以下网址: filmstar/Home/Actors

那么这里最好的命名约定是什么?有谁能详细描述一下?

3 个答案:

答案 0 :(得分:1)

缩短默认网址。所以你可以拥有一个HomeController,而Index的默认动作将显示为filmstar.com的网址(因为隐藏了默认设置)。

您可以将同样的逻辑应用于其他控制器。所以,你可以有一个ActorsController,默认的Index动作,然后这个url显示为filmstar.com/actors,以及一个FilmsController,默认的Index动作将响应filmstar.com/films

将控制器名称视为定义事物的特征。以及如何处理它的行动。因此,如果你想编辑一部电影,你可以使用filmstar.com/films/edit;如果你想制作一部新电影,你可以使用filmstar.com/films/create。但是,由于默认索引是隐藏的,因此它不会显示在普通视图中。

答案 1 :(得分:0)

没有最佳命名约定,只有默认值“donain //”

可能您正在寻找网址优化和搜索引擎优化,在这种情况下,您可以使用

管理global.asax中的所有网址
RouteTable.Routes.MapRoute("Actors", "actors", new { controller = "Actors", action = "Index" } );

答案 2 :(得分:0)

路由应该是/ filmstart / actors,是的,你需要一个控制器FilmStart控制器,其方法返回ActionResult Index和Actors