ASP.NET MVC框架中是否有一个表示控制器名称和操作名称的类?
我正在编写一个返回URL集合的方法,我希望它们作为包含“Controller”和“Action”属性或类似内容的对象返回。
这是因为有时候我需要仅隔离控制器名称或仅隔离操作名称。
还有Route对象,但对于我正在尝试做的事情来说,这似乎太重了。
ASP.NET MVC中是否有更简单的抽象?
答案 0 :(得分:2)
虽然控制器基类不是名称,但操作名称只是一个字符串,ActionInvoker将使用该字符串通过反射找到正确的操作。
我认为您必须使用Route Values Dictionary键/值对来表示路线。
RouteValueDictionary myValues = new RouteValueDictionary();
myValues.Add("Controller", "myController");
如果您不希望/不能访问Routing命名空间,则可以使用普通字典,然后将其转换为RouteValueDictionary。
在这种方法中,您可以使用标准字典或routeValue字典的键来隔离控制器或操作。
String ControlString = myValues["Controller"]
然后用它做你想做的事。也许使用常量来获取您想要访问的键。