0

これは、ASP.Net の私の DropDownList です。

<%: Html.DropDownListFor(x => x.CompanyUserFilterId, new SelectList(Model.CompanyUsers, "Id", "FirstName", Model.CompanyUserFilterId)) %>

DropDownList にすべての CompanyUsers を一覧表示し、FirstName プロパティと LastName プロパティの両方を表示したいと考えています。CompanyUsers は IEnumerable プロパティです。上記のコードは機能し、FirstName プロパティのみを表示します。両方表示することは可能ですか?

4

2 に答える 2

1

完全な顧客データをモデルとして渡す代わりに、連結されたフィールドを含むデータの射影を提供する必要があります。

コントローラーの実装を提供していませんが、おそらく次のようなことをしたいと思うでしょう:

var data = from c in DataContext select new CustomerData() { Id = c.Id, Name = c.FirstName + " " + c.LastName };

return View(data);

.. ここで、CustomerData は Id プロパティと Name プロパティを持つ単純な POCO です。次に、ビューを IEnumerable<CustomerData> を使用するように変更し、ドロップダウン リスト コードを、元の FirstName プロパティの代わりに、投影されたモデルの 'Name' プロパティを使用するように変更します。

うまくいけば、独自の特定のシナリオに合わせて微調整できます。

于 2010-10-28T13:28:52.900 に答える
0

MvcContribのドロップダウンリストは、デフォルトのリストよりもはるかに優れていることを付け加えておきます。可能な限り、そのライブラリを使用することを検討します。

于 2010-10-28T13:36:00.903 に答える