C# 使用枚举值作为dropdownlist ASPCore中的值
我正在尝试使用我以前在代码中声明的枚举中的值 以下是枚举:C# 使用枚举值作为dropdownlist ASPCore中的值,c#,asp.net-core,enums,C#,Asp.net Core,Enums,我正在尝试使用我以前在代码中声明的枚举中的值 以下是枚举: public enum CompanyStatus { WaitingForApproval = 1, Approved = 2, Disapproved = 3 } 下面是我试图使用已声明Id的选择列表 <select id="CompanyStatusFilter" validateme="true" class="form-control fullWidth" placeholder="Status
public enum CompanyStatus
{
WaitingForApproval = 1,
Approved = 2,
Disapproved = 3
}
下面是我试图使用已声明Id的选择列表
<select id="CompanyStatusFilter" validateme="true" class="form-control fullWidth" placeholder="Status" data-validation="length alphanumeric" data-validation-length="min1">
<option value=""></option>
<option value="(int)Core.Engine.CompanyStatus.Approved">Approved</option>
<option value="@Html.GetEnumSelectList<CompanyStatus>">Waiting for approval</option>
</select>
经核准的
等待批准
我不想显式地键入id作为值。
提前感谢您可以使用
GetEnumSelectList
为枚举值呈现选择
<select name="CompanyStatus" asp-items="Html.GetEnumSelectList(typeof (CompanyStatus))">
</select>
我可以通过将枚举转换为Int32来获取它的id
<option value="@Convert.ToInt32(Core.Engine.CompanyStatus.WaitingForApproval)">Waiting for approval</option>
等待批准
IMHO如果您对枚举使用帮助器会更好,例如:
@Html.DropDownListFor(m => m, Html.GetEnumSelectList(Model.GetType()))
在枚举值上,您可以使用[Display(Name=“Test 1”)]
属性来控制显示的内容