如何从ASP.NET MVC中的视图中找出当前资源和控制器名称

时间:2010-03-19 13:45:19

标签: asp.net-mvc rest

我以RESTful资源方式使用ASP.NET MVC,我希望能够从视图中获取当前资源和控制器名称。

我试图创建一个HTML页面,我想知道当前的资源和控制器名称是否可以获得这个?

3 个答案:

答案 0 :(得分:5)

您可以通过查看ViewContext.Controller属性在视图中获取它。 ViewContext属性还允许访问许多其他有用的属性,例如Route Data,Application,Cache,ViewData等。

编辑:要获得控制器的实际名称,您可以采用以下两种方式之一:

1)在ViewContext的Controller属性上调用GetType()并使用该Name属性获取控制器的类名

2)查看路径数据并检查“controller”键的值,例如ViewContext.RouteData.Values [“controller”](这可能是首选方法)

答案 1 :(得分:2)

此信息位于ViewContext的{​​{1}}属性中(假设您使用的是ViewPage)。

答案 2 :(得分:0)

您始终可以在控制器中运行GetType(或者只是键入它,如果这就是您想要做的)并将其存储在视图数据中。如果您使用来自多个控制器的相同视图,您可能希望将其设置为强类型视图,并将控制器名称作为其中的一部分。

您能更具体地了解为什么要这样做吗?可能有更好的方法。