2011-02-13 9 views
7

カスタムテキスト値を持つビューページにドロップダウンを表示しようとしています。SelectListにカスタムテキストフィールドを設定する

連絡先リストを表示しようとしています。連絡先には連絡先ID、名字、姓が含まれます。

<%= Html.DropDownListFor(m => m.ContactId, new SelectList(Model.Contacts, "ContactID", "LastName"), "- Select a Contact -") %> 

今のところ私は姓を表示していますが、名前と姓をドロップダウンに表示したいとします。私は同じのために探していた

<%= Html.DropDownListFor(m => m.ContactId, new SelectList(Model.Contacts, "ContactID", "FirstNameLastName"), "- Select a Contact -") %> 

答えて

6

変更連絡先クラス、プロパティを追加します。私はあなたが一年ほど前に尋ねた知っているが、このページを発見する他のすべての人々のために:私の場合は

Html.DropDownListFor(m => m.ContactId, 
     new SelectList(
      Model.Contacts.Select(
      c => new 
      { 
       Id = c.ContactId, 
       FullName = c.FirstName + " " + c.LastName 
      }), 
      "Id", 
      "FullName")) 

私は、「連絡先」クラスを変更することはできません。

+0

シンプルで素早い方法です。完璧です:) –

18

とあなたの質問には、Googleの最初の結果だった:

public class Contact { 
    public string FirstNameLastName { get { return FirstName + " " + LastName; } } 
} 

はそれを使用します。

+1

+1これは私が過去にこれをやったやり方です。うまく動作します。 –

+0

@スチーブン、解決済みとマーク! – regisbsb

関連する問題