我正在手动创建一个RazorView
实例并手动将该视图呈现给我的响应输出。
var errorController = new FakeErrorController();
var controllerContext =
new ControllerContext(httpApplication.Context.Request.RequestContext,
errorController);
var view = new RazorView(controllerContext, viewPath, null, false, null);
var viewModel = new ErrorViewModel
{
Exception = currentError
};
var tempData = new TempDataDictionary();
var viewContext = new ViewContext(controllerContext, view,
new ViewDataDictionary(viewModel), tempData,
httpApplication.Response.Output);
view.Render(viewContext, httpApplication.Response.Output);
工作正常。
但请注意我是如何硬编码的ViewModel
?我想知道是否可以查看是否定义RazorView
了强类型ViewModel
。
例如。 @model SomeNamespace.Model.Foo
然后在此基础上创建一个新类型。我们还假设有一个无参数的默认构造函数。
这可能吗?