DisplayFor()
用於呈現與屬性類型匹配的模板。
顯示模板是.cshtml文件內部/DisplayTemplates夾這又是一個視圖文件夾內(即任何從家,共享文件夾或甚至特定的控制器)。
一個例子。
如果您在一個String.cshtml模板像這裏面/瀏覽/分享:
@model String
@if (string.IsNullOrEmpty(Model)) {
<span>(no string)</span>
}
else {
<span>@Model</span>
}
每次調用DisplayFor()
一個字符串屬性時間:
DisplayFor(model => model.MyStringProperty);
它相應地將模板呈現爲字符串的值。您可以更具體地將/DisplayTemplates放置在特定的View文件夾中,並且只有來自這些視圖的調用受到模板的影響。
你的情況,你可以更加具體,並呼籲DisplayFor()
與特定的模板。
假設您有一個特定屬性的模板,名爲MyPropertyTemplate.cshtml。你會打電話DisplayFor()
這樣的:
DisplayFor(model => model.MyProperty, "MyPropertyTemplate");
而他們,在模板中,你可以有你想要的任何HTML屬性。
@model MyProperty
<span class="orangetxt strongtxt">@MyProperty.ToString()</span>
PS:如果它沒有找到一個模板,我想這只是沒有額外的HTML調用model.Property.ToString()
。
例如:EditorFor()
,例如,以類似的方式工作,但它使用/EditorTemplates文件夾。
嗯,我可能在這裏是錯的,但你的預期用法基於這個問題,在我看來是行不通的。你能否包括你如何使用幫手? – Ahmad