ユーザーがアップロードした複数の部分ビューで構成されるページがあります。Razor viewEngine をカスタマイズして、.cshtml ファイルのさまざまな場所を確認しました。部分ビュー _abc.cshtml (外部の場所にあります) をレンダリングしていて、この部分ビューにビューモデル AbcViewModel が必要な場合、これに対処する最善の方法は何ですか?
- オプション 1:
_abc.cshtml
AbcViewModel の使用を指定する DB エントリがあります。したがって、部分ビューを見つけたら、どのビューモデルを使用するかがわかります。この場合、ビューモデルはソリューション自体に存在します。
リフレクションを使用して、クラスを取得できます
Assembly assembly = Assembly.GetExecutingAssembly();
AbcViewModel viewModel= assembly.CreateInstance("AbcViewModel") as AbcViewModel;
外部の場所にviewModelを配置できる方法があるかどうか疑問に思っていました..この方法でアプリケーションを拡張できます..