016-动作名称选择器

      当ActionInvoker选取Controller中的Action时,会默认应用反射机制找到相同名字的方法,这个过程就是动作名称选择器运作的过程,这个选择查找过程对Action的名称字符大小写不进行区分。

1.ActionName特性

       如果在Action加上ActionName特性,此时路由参数action的值就会改变。

public class HomeController: Controller
{
    [ActionName("Default")]
    public ActionResult Index()
    {
        return View();
    }
} 

      此时访问Index动作,需要使用路由http://localhost/Home/Default,并且ASP.NET MVC会去寻找/Views/Home/Default.cshtml视图页面来运行,而不是/Views/Home/Index.cshtml。

      需要注意的是,应该避免多个方法对应同一个Action名称,此错误不会再编译时被发现,仅在运行时请求对应Action才引发异常。

posted @ 2015-10-13 17:39  RunningYY  阅读(384)  评论(0编辑  收藏  举报