ASP.NET MVC 3中是否存在用于类类型声明的ActionNameAttribute

本文关键字:类型 声明 ActionNameAttribute 用于 存在 MVC NET 是否 ASP | 更新日期: 2023-09-27 18:00:21

无法想象这个问题还没有被问到。。。不过,我找不到。

因此,我在ASP.NET MVC 3中的操作方法中使用了很多ActionNameAttribute。像这样:

[ActionName("confirm")]
[HttpGet]
public ActionResult Confirm(string stuffTitle)
{
   ActionResult resultView = CreateSomeStuff(stuffTitle);
   return resultView;
}

但是,我怎样才能在课堂上做到这一点呢?像这样:

[ActionName("personal")]
public class AccountController : Controller

有了ActionNameAttribute,它只能在方法声明中使用。但我想,在类类型声明中,这应该是可能的。也许还有另一个我还没听说过的属性?其他解决方法?

有人知道吗?提前感谢!!

ASP.NET MVC 3中是否存在用于类类型声明的ActionNameAttribute

我真的很难理解你在追求什么。你想更改控制器的名称吗?如果是,请使用路线:

routes.MapRoute(
    "FooRoute",
    "foo/{action}/{action}/{id}",
    new { controller = "Account", action = "Index", id = UrlParameter.Optional }
);

现在,对foo/someaction的所有请求将被路由到Account控制器的相应动作。

MVC控制器包含可以映射到Actions的方法。那么,正如Darin所说,它在课堂上会达到什么目的呢?说这个类有一个"列表"操作是没有帮助的。你还得说哪种方法,不是吗?

我在Phil Haack的博客上找到了这篇文章,http://haacked.com/archive/2008/08/29/how-a-method-becomes-an-action.aspx。如果你已经读过了,我提前道歉。我认为他所说的以及由此引发的一些讨论可能会对你有所帮助。