asp.net-mvc – 如何在editortemplate中找到父对象?

在自定义编辑器模板中,我想访问父对象.

我正在使用此代码,但这可能不是最好的方法,尤其是在使用嵌套视图时:

object parent = ViewContext.Controller.ViewData.Model;

有没有人有更好的主意?

最佳答案 如果编辑器需要额外的数据将其添加到模型或使用ViewData,则不应尝试爬上模型层次结构.

对渲染编辑器的调用看起来像

<%: Html.EditorFor(model => model.EditorModel, new {viewDataKeyName = Model.AdditionalData})%>

在添加对编辑器至关重要的数据时要小心,因为它必须包含在每个模板调用中,这就是我更喜欢在模型本身中包含值的原因.

点赞