カスタムエディタテンプレートで、親オブジェクトにアクセスしたいと思います。
私はこのコードを使用していますが、特にネストされたビューを使用する場合、これはおそらく最善の方法ではありません。
object parent = ViewContext.Controller.ViewData.Model;
誰かもっと良いアイデアがありますか?
カスタムエディタテンプレートで、親オブジェクトにアクセスしたいと思います。
私はこのコードを使用していますが、特にネストされたビューを使用する場合、これはおそらく最善の方法ではありません。
object parent = ViewContext.Controller.ViewData.Model;
誰かもっと良いアイデアがありますか?
エディターが余分なデータを必要とする場合は、モデルの階層を上ってみるべきではありません。それをモデルに追加するか、ViewData を使用してください。レンダリング エディターの呼び出しは次のようになります。
<%: Html.EditorFor(model => model.EditorModel, new {viewDataKeyName = Model.AdditionalData})%>
この方法でエディターに不可欠なデータを追加する場合は注意してください。このテンプレートへの各呼び出しに含める必要があるため、モデル自体に値を含めることを好むのはそのためです。