asp.net-mvc – 访问ASP.NET MVC应用程序中的控制器/操作列表

我们知道在幕后,ASP.NET MVC框架将根据哪些类派生自System.Web.Mvc.Controller以及哪些类返回哪些类来使用反射来确定哪些控件/操作可以执行?一个ActionResult对象.

对我的问题 – 是否可以从我的MVC应用程序中访问这个控制器/操作列表?

(我可以通过在当前程序集上使用反射自己来做,但是如果列表已经由ASP.NET MVC构建,我宁愿重新使用这个工作,而不是自己重新创建一下.)

解决方法

新的ReflectedControllerDescriptor(typeof(TController))GetCanonicalActions()将返回一组ActionDescriptor对象,显示控制器上的所有操作.了解诸如选择属性或命名属性之类的东西不够聪明,所以并不是每一个返回的动作都被保证是网络可调用的.但是,如果您需要直接执行操作,可以对任何您感兴趣的操作调用ActionDescriptor.Execute().

dawei

【声明】:淮南站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。