私はMVC4で作業しています。
次のドロップダウンリスト/選択リストがあります。
@Html.DropDownList("EmployerID", String.Empty)
ViewBag.EmployerID = new SelectList(db.Employers, "EmployerID", "Name", contact.EmployerID);
このドロップダウンリスト/選択リストを「名前」でソートしたい。私は何をすべきか?
どうもありがとう!:)
私はMVC4で作業しています。
次のドロップダウンリスト/選択リストがあります。
@Html.DropDownList("EmployerID", String.Empty)
ViewBag.EmployerID = new SelectList(db.Employers, "EmployerID", "Name", contact.EmployerID);
このドロップダウンリスト/選択リストを「名前」でソートしたい。私は何をすべきか?
どうもありがとう!:)
OrderBy
あなたに追加db.Employers
@Html.DropDownList("EmployerID", String.Empty)
ViewBag.EmployerID = new SelectList(db.Employers.OrderBy(x => x.Name),
"EmployerID", "Name", contact.EmployerID);
他の人が私と同じ問題を抱えている場合に備えて、私が思いついたこの解決策を共有すると思いました. ジェネリックを使用しているため、SelectList を作成する前にソースを注文できません。ただし、生成された SelectList を注文することはできます。メソッドが SelectList を返すようにしたかったので、順序付けられた SelectList をソースとして使用して、もう一度 SelectList() を呼び出します。:)
var orderedSelectList = new SelectList(source, "YourValueFieldName", "YourTextFieldName", selectedCode).OrderBy(i => i.Text);
return new SelectList(orderedSelectList, "Value", "Text", selectedCode);