Получить тип модели из объекта RazorView - PullRequest
1 голос
/ 18 марта 2012

У меня есть объект System.Web.Mvc.RazorView, который строго типизирован в cshtml.

Можно ли получить тип модели из экземпляра этого класса?

Ответы [ 2 ]

3 голосов
/ 19 марта 2012

Это возможно.

Вызовите BuildManager.GetCompiledType(view.ViewPath), чтобы получить тип, сгенерированный путем компиляции представления.
Тип модели можно найти, проверив универсальный аргумент базового типа скомпилированного типа (который долженбыть WebViewPage<TModel>)

1 голос
/ 18 марта 2012

Нет способа получить модель, указав только экземпляр System.Web.Mvc.RazorView. Он доступен внутри метода RenderView, которому передается ViewContext, но снаружи вы не можете получить к нему доступ. Но если вы находитесь внутри представления, вы можете использовать свойство Model.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...