DisplayFor()
プロパティ タイプに一致するテンプレートをレンダリングするために使用されます。
表示テンプレートは、 /DisplayTemplatesフォルダー内の .cshtml ファイルであり、ビュー フォルダー (つまり、ホーム、共有、または特定のコントローラーの任意のフォルダー) 内にあります。
例。
/Views/Shared内に次のような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>
model.Property.ToString()
PS: テンプレートが見つからない場合は、 html を追加せずに呼び出すだけだと思います。
参考までに:EditorFor()
たとえば、 は同様の方法で機能しますが、/EditorTemplatesフォルダーを使用します。