Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk mengisi dropdownlist dengan nilai enum dalam ASP.NET MVC?

Bagaimana untuk mengisi dropdownlist dengan nilai enum dalam ASP.NET MVC?

Susan Sarandon
Susan Sarandonasal
2025-01-31 11:16:13587semak imbas

How to Populate a DropDownList with Enum Values in ASP.NET MVC?

Di ASP.NET MVC, gunakan nilai penghitungan untuk mengisi senarai drop -down

Buat senarai drop -down dengan nilai yang disenaraikan dalam ASP.NET MVC, yang boleh dilaksanakan dengan mudah menggunakan kaedah pengembangan

. Untuk menggunakan kaedah ini dengan penghitungan, ikuti langkah -langkah berikut:

Html.DropDownList untuk MVC v5.1 (dan versi yang lebih tinggi):

menggunakan <:> kaedah:

untuk MVC V5 (dan versi yang lebih rendah): Html.EnumDropDownListFor

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

Jika anda menggunakan versi MVC 5 atau lebih rendah, anda boleh menggunakan kaedah pengembangan untuk memperluaskan penyelesaian Rune:

EnumHelper Ini membolehkan penggunaan sintaks mudah:

<code class="language-csharp">@Html.DropDownList("MyType",
    EnumHelper.GetSelectList(typeof(MyType)),
    "请选择类型",
    new { @class = "form-control" }
)</code>

ingat untuk mengandungi

penamaan ruang untuk menggunakan kaedah pengembangan ini.
<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>

Atas ialah kandungan terperinci Bagaimana untuk mengisi dropdownlist dengan nilai enum dalam 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