2012-02-15 4 views
2

CSHTMLファイルに次のコードは、連絡先のリストをドロップダウンを作成しますが、それは値の説明のために使用するフィールドは、私が表示したいものではありません。ASP.NET MVC 3 - @ Html.DropDownList - 説明を変更するにはどうすればよいですか?

私はどのようにしてコンタクトオブジェクトの別のフィールドからデータを選択するのですか? Model.ContactListがあなたのコントローラのアクションに移入され、

@Html.DropDownList("ContactId", String.Empty) 

答えて

1
@Html.DropDownListFor(a => a.OtherContactId, 
    new SelectList(Model.ContactList, "ContactId", "ContactValue", 
     Model.OtherContactId), "-- Select --") 

P.S.私は、あなたが選択するオプションのテキストまたは更新されたプロパティのタイトルを変更する意味するかどうかを完全にかどうか分からないので、あなたは、サーバー側(コントローラ)上でこのような何かを試すことができ

+0

ありがとう、私はコントローラでそれを設定する必要がありました。 ViewBag.ContactId = new SelectList(db.Contacts、 "ContactId"、 "FullNameAndCompany"); – Michael

+0

これはあなたを助けてくれてうれしいですが、時にはさまざまなAPI構文をナビゲートするのが少し面倒かもしれません:) –

1

を提供するハイブリッドのようなものを提示しています:ビュー上

ViewBag.ContactList = new SelectList(iContactRepository.GetAllContacts(), 
            "ContactId", "Name", contactDefault.ContactId); 

//Here the method GetAllContacts returns Iqueryable<Contact>. 

そして、この:

@Html.DropDownList("ContactIdSelect", ViewBag.ContactList as SelectList) 

ThisはSelectListのドキュメントです。

希望します。

関連する問題