ASP.NET MVC 3アプリケーションでは、私は列挙型とそれに対するカスタム表示テンプレートを開発しています。
ビューの1つでは、特定のenum値を表示する必要がありますが、次のようなコードを書くと、
@Html.DisplayFor(model => EnumType.EnumValue)
私はコンパイルエラーを受け取る:
テンプレートは、フィールドアクセス、プロパティアクセス、一次元配列インデックス、または単一パラメータカスタムインデクサ式でのみ使用できます。
私は適切な価値を持った私のモデルにプロパティを追加するソリューションを考えていますが、そのようなシナリオで私のディスプレイテンプレートを活用する方が簡単かもしれません。
回答:
回答№1は1タイプのテンプレートに名前を付けることによって、タイプのカスタム・エディターおよび表示テンプレートを定義することができます。
テンプレートの識別方法に関する情報: http://bradwilson.typepad.com/blog/2009/10/aspnet-mvc-2-templates-part-3-default-templates.html
剃刀の交換用 <%@ Control ...
〜と @model TemplateType
.