你把它传进去ViewDataDictionary
,例子如下:
// optional: if you don't want to use "AdditionalData" magic string
public static class ViewDataKeys
{
public const string AdditionalData = "AdditionalData";
}
我们可以使用第二个重载DisplayFor
并将附加数据传入ViewDataDictionary
:
@Html.DisplayFor(m => m.MyModel, new ViewDataDictionary { { ViewDataKeys.AdditionalData, "additional-value" } })
在您的DisplayFor
模板中,您可以ViewDataDictionary
像这样访问:
@{
string additionalData = ViewData[ViewDataKeys.AdditionalData];
/*
* if you need to cast the data type:
* var additionalData = (AdditionalDataType)ViewData[ViewDataKeys.AdditionalData];
*/
}
您还可以传递多个附加数据,例如:
@Html.DisplayFor(m => m.MyModel, new ViewDataDictionary {
{ ViewDataKeys.AdditionalData1, "additional-value1" },
{ ViewDataKeys.AdditionalData2, "additional-value2" }
})
请记住,在模型中传递数据总是更好。