测试强类型视图

时间:2010-12-20 19:50:42

标签: asp.net-mvc

在asp.net mvc 2中,我需要以编程方式获取所有强类型的视图,并显示非强类型视图的列表。

我该怎么做?

提前致谢。

1 个答案:

答案 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;