Arkadaşlar merhaba, bu yazımda sizlere Mvc Dropdownlist Doldurma konusundan bahsedeceğim. Kısaca neler yapacağımdan söz edeyim;
– İlk olarak model ile sayfamıza gönderdiğimiz bir listeyi dropdownlist üzerinde göstereceğim. Daha sonrasında da Viewbag ile bir liste gönderip dropdownlist üzerinde gösterme işlemi yapacağım. Örnek olarak bir firma listemiz var ve bu listeden bir firma seçimi yapmak istiyoruz. Liste üzerinde gösterimini sağlayıp ilgili firma seçimini sağlayabileceğiz.
İlk olarak bir modelimizi oluşturuyoruz. Bu oluşturduğumuz modelde ben CompanyId ve CompanyName isimli iki tane property oluşturdum.
public class CompanyModel { public int CompanyId { get; set; } public string CompanyName { get; set; } }
İlk olarak bir modelimizi oluşturuyoruz. Bu oluşturduğumuz modelde ben CompanyId ve CompanyName isimli iki tane property oluşturdum. Daha sonra Controller‘da bulunan kodlarımızı yazıyoruz.
public IActionResult Index() { List<CompanyModel> companyList = new List<CompanyModel>(); CompanyModel company1 = new CompanyModel() { CompanyId = 1, CompanyName = "Abc Limited Şirketi" }; CompanyModel company2 = new CompanyModel() { CompanyId = 1, CompanyName = "Xyz Anonim Şirketi" }; companyList.Add(company1); companyList.Add(company2); return View(companyList); }
Controller’da ki kodlarımızı yazdıktan sonra da View‘da bulunan kodlarımızı yazıyoruz.
@using MvcDropdownSample.Models @model List<CompanyModel> <select name="company"> <option value="">Firma Seçiniz:</option> @foreach (var company in Model) { <option value="@company.CompanyId">@company.CompanyName</option> } </select>
Kısaca yaptıklarımızı anlatmak istiyorum. Controller’da bir CompanyModel listemizi oluşturduk ve bu listeye 2 adet eleman ekledik. View’a bir List<CompanyModel> listesi döndük ve view üzerinde foreach ile dropdownlistimizi oluşturduk. Tabi controller üzerinde örnek bir liste olması amacıyla bu şekilde eklemesini yaptık. Siz veritabanından ya da başka bir yerden çektiğiniz listenizi bu kısımlarda düzenleyerek işlemler gerçekleştirebilirisiniz.Sadece örnek vermek amacıyla bu şekilde bir view oluşturduk. Genellikle bu şekilde bir model ile değil de Viewbag ile veya ViewModel ile gerekli olan listelerin aktarımını view’a sağlayabiliriz.
Şimdi gelelim Viewbag ile veri gösterimine:
public IActionResult ViewBagSample() { List<CompanyModel> companyList = new List<CompanyModel>(); CompanyModel company1 = new CompanyModel() { CompanyId = 1, CompanyName = "Abc Limited Şirketi" }; CompanyModel company2 = new CompanyModel() { CompanyId = 1, CompanyName = "Xyz Anonim Şirketi" }; companyList.Add(company1); companyList.Add(company2); ViewBag.CompanyList = companyList; return View(); }
@using MvcDropdownSample.Models @{ List<CompanyModel> companyList = ViewBag.CompanyList as List<CompanyModel>; } <select name="company"> <option value="">Firma Seçiniz:</option> @foreach (var company in companyList) { <option value="@company.CompanyId">@company.CompanyName</option> } </select>
Örnek vermiş olduğum bu iki şekilde de Mvc Dropdownlist Doldurma işlemini gerçekleştirebilirsiniz.
Bir sonraki yazıda görüşmek üzere…