MVC DropdownList Doldurma
MVC projesinde dropdownlist elemanını veritabanından doldurmak için aşağıdaki yöntemi kullanabilirsiniz.
Örnekte kullandığımız yöntem ViewBag ile veriyi View’e taşımak ve HtmlHelper metodunu kullanarak bu verileri dropdownlist olarak görüntülemek şeklindedir.
Önce controller tarafndaki metodumuz:
public ActionResult DDLOrnek()
{
DataModel.MezunEntities mezun=new DataModel.MezunEntities();
List<SelectListItem> IcerikTurListe = (from k in mezun.IcerikTur
select new SelectListItem
{
Text = k.Ad,
Value = k.Id
}).ToList();
ViewBag.Liste = IcerikTurListe;
return View();
}
Controller tarafındaki verileri dropdownlist elemanına taşımak için ViewBag nesnesini kullanacağız. Hatırlayacağımız üzere Controller’dan View’e veri taşımak için ViewBag kullanılabilmektedir. Yukarıdaki metot ile SelectListItem tipinde nesneler saklayan bir liste oluşturduk. Listeyi oluşturmak için veritabanı bağlantısı üzerinden Linq sorgusu kullandık. Oluşturduğumuz listeyi ViewBag ile view tarafına taşıyacağız.
Bu amaçla
ViewBag.Liste= IcerikTurListe;
satırıyla oluşan listeyi viewBag nesnesine dolduruyoruz. Yukarıdaki örnekte viewbag ile verileri taşıdık. Ancak istersek view’in kullandığı model sınıfı içerisinde selectListItem tipinde bilr listeyi property olarak tanımlayıp, verileri bu listeye doldurup model üzerinden de bu işlemi yapabiliriz. Bu konudaki örneği bir sonraki yazımıza bırakarak devam edelim.
Şimdi geldik view kısmında dropdownlist elemanında bu verileri göstermeye. View içerisinde ViewBag.Liste içindeki verileri dropdownlist elemanında görüntülemek için aşağıdaki ifade kullanılabilir. @Html.DropDownList(“Liste”) Bu ifadede kullanılan “Liste” ismi bizim controller’da tanımladığımız ViewBag ismidir. Hatırlayacağımız gibi controllar’da ViewBag.Liste isimli bir viewBag tanımlamış ve içini selectListItem tipinden nesneler ile doldurmuştuk. View’in görünümü aşağıdaki gibidir.
@{
ViewBag.Title = “DDLOrnek”;
}
<h2>DDLOrnek</h2>
@Html.DropDownList(“Liste”)
Kaynak : http://www.asp.net/mvc/tutorials/javascript/working-with-the-dropdownlist-box-and-jquery/using-the-dropdownlist-helper-with-aspnet-mvc