我以RESTful资源方式使用ASP.NET MVC,我希望能够从视图中获取当前资源和控制器名称。
我试图创建一个HTML页面,我想知道当前的资源和控制器名称是否可以获得这个?
答案 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(或者只是键入它,如果这就是您想要做的)并将其存储在视图数据中。如果您使用来自多个控制器的相同视图,您可能希望将其设置为强类型视图,并将控制器名称作为其中的一部分。
您能更具体地了解为什么要这样做吗?可能有更好的方法。