2010-10-08 55 views
4

在自定義編輯器模板中,我想訪問父對象。如何到達editortemplate中的父對象?

我使用這個代碼,但是這可能不是做的最好方法,使用嵌套的意見特別是當:

object parent = ViewContext.Controller.ViewData.Model; 

是否有人有更好的主意嗎?

回答

2

如果編輯需要額外的數據將其添加到模型或使用ViewData,則不應嘗試爬上模型層次結構。 渲染編輯器的調用看起來像

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

添加數據是至關重要的編輯器這種方式時要小心,因爲它被包含在每次調用這個模板,這就是爲什麼我更喜歡包括模型本身的值。

相關問題