我有一個枚舉,我可以顯示在EnumDropDownListFor
沒有問題,並保存枚舉。現在我正在嘗試從我的記錄中獲取該值併爲其顯示DataAnnotation。我一直在嘗試Enum.GetName
但是遇到了一些問題。Enum.GetName顯示註釋
我枚舉 -
public enum LandOwner
{
[Display(Name = "Yes")]
Y =1 ,
[Display(Name = "No")]
N =2,
[Display(Name = "No Nearby Land Owner")]
O =3
}
public LandOwner ownerDropDown { get; set; }
當我保存記錄保存的Y,N或O
我Enum.GetName
- 在Model.LandOwnersNotified
是Y,N,或O
@Enum.GetName(typeof(OpenBurn.Models.BurnPile.LandOwner), Model.LandownersNotified)
但是,當我運行此我得到以下錯誤 -
傳遞必須是枚舉鹼或基礎類型的枚舉,如一個Int32值\ r \ n參數名稱:值
當我改變Enum.GetName到
@Enum.GetName(typeof(OpenBurn.Models.BurnPile.LandOwner), 1)
我知道Enum.GetName
的後期部分正在尋找一個整數,但不是Model.LandownersNotified
與枚舉組合提供的?
我會收到一切的Y.我從來沒有收到[Display(name="...")]
。
@ Html.DisplayFor()不適合你嗎? – dwbartz
@ Html.DisplayFor()不會給我我的枚舉選項。 –