1

如何在codefirst映射中映射枚舉屬性?如何在codefirst結構上映射枚舉屬性?

我的枚舉:

public enum GenderType : int 
{ 
    Male = 0, 
    Female = 1 
} 

我的模型

public string City { get; set; } 
    public string Country { get; set; } 
    public string Occupation { get; set; } 
    public string WebsiteURL { get; set; } 
    public GenderType Gender { get; set; } 
    public int gender { get; set; } 
    public GenderType Gender 
    { 

//不工作:不能含蓄轉換int類型.... {返回性別; } set {gender =(int)value; } }

我的配置




      Property(model => model.Comment) 
       .HasMaxLength(4000) 
       .IsUnicode(); 

      Property(model => model.Culture) 
       .IsOptional() 
       .HasMaxLength(10); 

----- HOW TO WRITE GENDER? 

回答

1

枚舉由EF 5版本(EF代碼第一次5)向前發展的支持,所以如果你使用的是它應該自動工作,在另一方面,如果你使用的是舊版本,那麼你可以使用提到的解決方案Here作爲解決方法(我用它,它的工作原理)。該解決方案的主要思想是,舊版EF忽略它們而沒有任何錯誤,因此您需要使用int類型的另一個屬性並映射該屬性,那麼枚舉類型的屬性可以簡單地變成該屬性的包裝。