我有一个System.Web.Mvc.RazorView对象,在cshtml中是强类型的。
我可以从这个类的实例中获取模型类型吗?
答案 0 :(得分:3)
这是可能的。
调用BuildManager.GetCompiledType(view.ViewPath)
以获取通过编译视图生成的类型
您可以通过检查已编译类型的基类型的泛型参数(应该是WebViewPage<TModel>
)来找到模型类型
答案 1 :(得分:1)
没有办法让模型只给出System.Web.Mvc.RazorView
的实例。它在RenderView
方法中可用,该方法传递ViewContext
,但从外部无法访问它。但如果您在视图中,则可以使用Model
属性。