在asp.net mvc 2中,我需要以编程方式获取所有强类型的视图,并显示非强类型视图的列表。
我该怎么做?
提前致谢。
答案 0 :(得分:1)
强类型视图继承自System.Web.Mvc.ViewPage。无类型视图继承自System.Web.Mvc.ViewPage。注: ViewPage继承自ViewPage。您必须加载包含视图的编译程序集(通过aspnet_compiler.exe生成),然后运行以下LINQ到对象查询:
var stronglyTypedViews = from type in assemblyContainingViews.GetTypes()
where typeof(ViewPage<>).IsAssignableFrom(type)
select type;
var weaklyTypedViews = from type in assemblyContainingViews.GetTypes()
where typeof(ViewPage).IsAssignableFrom(type)
&& !typeof(ViewPage<>).IsAssignableFrom(type)
select type;