インスタンスを手動で作成し、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
それに基づいて、新しいタイプを作成します。また、パラメーターのないデフォルトのコンストラクターがあると仮定しましょう。
これは可能ですか?