Heim >Backend-Entwicklung >C++ >Wie kann ich ASP.NET -MVC -Dropdowns mit Aufzählungswerten bevölkern?
Populierung von ASP.NET -MVC -Dropdowns mit Aufzählungswerten
dynamisch besiedelnde Dropdown -Listen mit Aufzählungswerten ist eine häufige Anforderung in der ASP.NET -MVC -Entwicklung. Während die Html.DropDownList
-Erweiterungsmethode einen einfachen Ansatz bietet, erfordert die effektive Integration mit Aufzählungen eine sorgfältige Überlegung.
veranschaulichen wir mit einem Beispiel Aufzählungsdelementtypen:
<code class="language-csharp">public enum ItemTypes { Movie = 1, Game = 2, Book = 3 }</code>
vereinfachter Ansatz (MVC 5.1 und später):
Für MVC -Versionen 5.1 und höher liefert die Html.EnumDropDownListFor
-Einweiterung eine prägnante Lösung:
<code class="language-csharp">@Html.EnumDropDownListFor(x => x.YourEnumField, "Select Item Type", new { @class = "form-control" })</code>
Dies bindet den Dropdown direkt an die Enumeigenschaft Ihres Modells.
MVC 5 und früher:
Für ältere MVC -Versionen (5 und früher) bietet die EnumHelper
-Elweiterung eine praktikable Alternative:
<code class="language-csharp">@Html.DropDownList("MyType", EnumHelper.GetSelectList(typeof(ItemTypes)), "Select Item Type", new { @class = "form-control" })</code>
Benutzerdefinierte Erweiterungsmethode (für MVC 5 und früher):
Für erweiterte Code -Wiederverwendbarkeit und sauberere Syntax in MVC 5 und früheren Versionen wird eine benutzerdefinierte Erweiterungsmethode empfohlen:
<code class="language-csharp">namespace MyApp.Common { public static class MyExtensions { public static SelectList ToSelectList<TEnum>(this TEnum enumObj) where TEnum : struct, IComparable, IFormattable, IConvertible { var values = from TEnum e in Enum.GetValues(typeof(TEnum)) select new { Id = e, Name = e.ToString() }; return new SelectList(values, "Id", "Name", enumObj); } } }</code>
Diese Erweiterungsmethode vereinfacht den Prozess:
<code class="language-csharp">ViewData["taskStatus"] = task.Status.ToSelectList();</code>
Dieser Ansatz macht die Integration von Enums in Ihre Dropdown -Listen, die unabhängig von Ihrer MVC -Version verwaltbarer und wartbarer werden. Wählen Sie die Methode, die die MVC -Version und den Codierungsstil Ihres Projekts am besten entspricht.
Das obige ist der detaillierte Inhalt vonWie kann ich ASP.NET -MVC -Dropdowns mit Aufzählungswerten bevölkern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!