2016-10-14 124 views
4

我在我的Razor視圖中使用了asp-items="@Html.GetEnumSelectList(typeof(Salary))"並帶有一個選擇標記,以基於enum Salary填充列表值。Html.GetEnumSelectList - 使用空格獲取枚舉值

但是,我的枚舉包含一些項目,我想在其中有空格。例如。的項目之一是PaidMonthly,但是當我顯示此使用Html.GetEnumSelectList,我想它被顯示爲"Paid Monthly"(在它的空間)

我使用在每個構件的Description屬性在枚舉嘗試,然而,當選擇框呈現它只使用原始值。

任何人都可以請幫我解決這件事嗎?

(我的代碼示例) - >使用ASP.NET 1.0的核心

Razor視圖:

<select asp-for="PersonSalary" asp-items="@Html.GetEnumSelectList(typeof(Enums.Salary))"> 
</select> 

枚舉薪水:

public enum Salary 
{ 
    [Description("Paid Monthly")] 
    PaidMonthly = 1, 
    PaidYearly = 2 
} 
+0

顯示你已經嘗試 –

+0

與嘗試'代碼[顯示(NAME =「按月支付「)]' –

+0

其實,我也嘗試過。不工作雖然:\ – terry45

回答

11

我設法解決這個問題。我只需要使用GetEnumSelectList<>的另一種方法,在Razor視圖中我們需要使用Display屬性。

下面是代碼:

Razor視圖:

<select asp-for="PersonSalary" asp-items="Html.GetEnumSelectList<Enums.Salary>()"></select> 

枚舉薪水:

public enum Salary 
{ 
    [Display(Name="Paid Monthly")] 
    PaidMonthly = 1, 
    PaidYearly = 2 
}