0
でこれは動作しますが、.cshtmlかみそりビューで複数の列
をDropDownListForを生成する方法:
@Html.DropDownListFor(
m => m.PersonId, //bound value
new SelectList(Model.Persons, "PersonId", "FirstName" , 0), //list
" -- Select A Person -- " //default
)
しかし、Model.Persons
は、Model.Persons.PersonId
とModel.Persons.FirstName
を含むことに加えて、Model.Persons.LastName
が含まれています。
姓を選択リストに別の列として表示するにはどうすればよいですか?
これは簡単な例ですが、私はドロップダウンリストの各行の表示用にビューモデルに文字列を含める必要がありますか?これまで私が見てきたことは、他の人たちも示唆しているものです(つまり、DisplayText = "{0} | {1} | ... etc"、field1、field2) –
ya - ビューモデルには、表示されます。個人的には、表示されるすべてがスーパーセットまたはエンティティのサブセットとして含まれるViewModels(「ドメインモデル」または「エンティティ」ではなく)を使用します。また、上記のようなプロパティ、さらにIEnumerableをモデルに含めると、すべての準備が整います。 –
それは私がやったことのほとんどです。私は 'int id'と' string display'を持つgenericitemsという名前のクラスを作りました。私のビューモデルでは、 'List SomeName'タイプの取引だけを含んでいます。また、リストの開始インデックス値とトップラベルをビューモデルに含めます。 –