Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk membuat dropdownlist dari enum di ASP.NET MVC?

Bagaimana untuk membuat dropdownlist dari enum di ASP.NET MVC?

Susan Sarandon
Susan Sarandonasal
2025-01-31 11:11:10380semak imbas

Buat senarai drop -down dari penghitungan dalam ASP.NET MVC

Kaedah pengembangan di ASP.NET MVC menyediakan cara untuk memudahkan membuat senarai drop -down. Walau bagaimanapun, menggunakannya dengan penghitungan mungkin rumit.

Html.DropDownList MVC 5.1 dan di atas versi: Gunakan

Html.EnumDropDownListFor MVC 5.1 memperkenalkan kaedah lanjutan

, memudahkan proses membuat senarai drop -down dari penghitungan. Contoh seperti berikut:

Html.EnumDropDownListFor MVC Versi 5: Gunakan

<code class="language-csharp">@Html.EnumDropDownListFor(
    x => x.YourEnumField,
    "请选择类型", 
    new { @class = "form-control" })</code>

Jika anda menggunakan MVC 5, anda boleh menggunakan kategori EnumHelper:

dalam kepekatan program

Microsoft.Web.Mvc.dll EnumHelper MVC 5 dan di bawah versi: Gunakan kaedah lanjutan

<code class="language-csharp">@Html.DropDownList("MyType", 
   EnumHelper.GetSelectList(typeof(MyType)) , 
   "请选择类型", 
   new { @class = "form-control" })</code>
Untuk versi sebelumnya MVC 5, anda boleh membuat kaedah lanjutan untuk menukar ke

:

SelectList Ini membolehkan anda menggunakan kaedah

:
<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>

ToSelectList

Atas ialah kandungan terperinci Bagaimana untuk membuat dropdownlist dari enum di ASP.NET MVC?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn