4

ASP.NET MVC3 サイトでいくつかの基本モデル用の汎用エディターを作成しようとしています。文字列、ブール値、列挙型、リスト コレクションを含めることができるようになりました。私がやりたいことは、リストを認識し、このリストに文字列を追加および削除できるカスタム エディターを表示するように、既定のエディター テンプレートを拡張することです。他のすべては問題なく動作します。

もちろん、ファイル List.cshtml に名前を付けることができないので、これを機能させる方法はありますか? また、列挙型がデフォルトで列挙型のドロップダウンリストにならないのはなぜですか?

テンプレートという名前のモデルを作成できることはわかっていますが、クラス名は実行時までわかりません。

ヘルプとガイダンスをありがとう。

4

1 に答える 1

14

リストのタイプであるFoo.cshtmlエディタテンプレートに名前を付けることができます: . 次に簡単に:FooList<Foo>

@Html.EditorFor(x => x.FooList)

エディター テンプレートの場合FooListIEnumerable<Foo>このリストの各要素に対して自動的にレンダリングされます。そのため、String、Decimal、DateTime などの基本的なデータ型のエディター テンプレートが既にある場合は、その@Html.EditorFor(x => x.SomeList)エディター テンプレートが選択されます。

于 2011-03-14T20:56:57.037 に答える