首頁 >後端開發 >C++ >如何從ASP.NET MVC中的枚舉中創建下拉列表?

如何從ASP.NET MVC中的枚舉中創建下拉列表?

Susan Sarandon
Susan Sarandon原創
2025-01-31 11:26:09554瀏覽

How to Create Dropdown Lists from Enumerations in ASP.NET MVC?

從ASP.NET MVC

中的枚舉生成下拉列表 ASP.NET MVC簡化了使用

>擴展方法來枚舉的下拉列表的創建。本指南展示了實施此功能的有效技術。 Html.DropDownList 對於MVC版本5.1及以後的

>,該方法簡化了該過程。 只需提供代表枚舉,下拉標籤和任何所需的HTML屬性的模型屬性。

> Html.EnumDropDownListFor

> MVC版本5,類提供方便的替代方案。使用
<code class="language-csharp">@Html.EnumDropDownListFor(x => x.YourEnumField, "Select Your Option", new { @class = "form-control" })</code>
獲得代表枚舉的A

>EnumHelper> GetSelectList 對於MVC版本5和更早的MVC版本,一種自定義擴展方法(如Rune Westergren的建議)提供了一個簡潔的解決方案:SelectList

<code class="language-csharp">@Html.DropDownList("MyOption", EnumHelper.GetSelectList(typeof(MyOption)), "Select Your Option", new { @class = "form-control" })</code>
此擴展方法啟用了一個清潔器語法:

<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>
>選擇最適合您的MVC版本的方法,以有效地從枚舉中生成下拉列表。

>

以上是如何從ASP.NET MVC中的枚舉中創建下拉列表?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn