Ana Sayfa Microsoft .NETAsp.Net ASP.NET MVC’de DropDownList İçerisinde Enum Değerler Kullanmak

ASP.NET MVC’de DropDownList İçerisinde Enum Değerler Kullanmak

by Sinan BOZKUŞ
5.869 kez okundu

Anlatacağım özellik MVC 5.1 ile gelmiştir, 5.1 öncesinde kullanamazsınız.

[csharp]public enum _ArticleType
{
[Display(Name = "Sağlık Köşesi")]
HealthArticles = 1,
[Display(Name = "Hastalıklar")]
Diseases = 2
}[/csharp]

Yukarıdaki örneğimde _ArticleType adında bir enum’ım var, buraya kadar herşey bildiğimiz gibi. Ek olarak her enum elemanın üzerinde bu enum’ın arayüzde gösterilirken ne şekilde gösterileceği yazıyor. Bunun için Data Annotations‘lardan faydalanıyorum. Usinglerinizin arasına System.ComponentModel.DataAnnotations eklemeniz gerekmektedir.

Enumla ilgili tüm tanımlamalarımızı yaptığımıza göre arayüzdeki kullanımına geçebiliriz.

[csharp]@Html.EnumDropDownListFor(x => x.ArticleType, "Seçiniz")[/csharp]

x.ArticleType modelimden gelmektedir, kullanımı textboxfor ile aynı şekildedir. DropDownList üzerinde seçim yapılmadığında da varsayılan olarak “Seçiniz” yazısı gelecektir.

Bunlara da bakmak isteyebilirsiniz

2 yorum

Onur Yıldız 19 Ağustos 2019 - 10:35

Merhabalar Sinan bey; aynı yöntemi kullanıyorum fakat ben mesela benim enum class’ımda 5 elaman var ben dorpdown listte sadece 1 ile 4 arasını göstermek istiyorum 5. elemanı gizleme ya da disable yapabilir miyim? bu şekilde hepsi geliyor. Çok araştırdım bir türlü yöntem bulamadım. Teşekkür ederim şimdiden

Yanıtla
Sinan BOZKUŞ 04 Eylül 2019 - 16:23

En basitinden Linq ile where şartı yazabilirsiniz yada bunu yapan bir extension method yazabilirsiniz.

Yanıtla

Bir Yorum Bırakın