11
我有一個實體類,它具有一個屬性爲數據類型爲Int的底層數據庫列,但實際上我希望此屬性是一個枚舉。有什麼辦法指定這個屬性返回一個枚舉?如何用實體框架中的Enum替換Int屬性?
我有一個實體類,它具有一個屬性爲數據類型爲Int的底層數據庫列,但實際上我希望此屬性是一個枚舉。有什麼辦法指定這個屬性返回一個枚舉?如何用實體框架中的Enum替換Int屬性?
間接與so一樣。
就個人而言,我離開存儲INT公衆(例如爲DbFoo
,其中枚舉屬性是Foo
) - 這樣我還可以寫反對在數據庫執行列lambda表達式,例如:
where row.DbFoo == SomeConstant
如果您不公開存儲值,則無法做到這一點。你同樣可以把它的內部,並在上下文中的一些方法做過濾......這裏有一個我今天早些時候寫道:
public IOrderedQueryable<User> Administrators
{
get { return Users.Where(x => x.DbUserType == User.UserTypeAdmin)
.OrderBy(x => x.Name);
}
其中是我的內部常數。在這種情況下,我無法使用區分的子類,因爲它正在干擾ADO.NET數據服務。
我使用相同的方法,它工作得很好。直到EFF默認支持枚舉爲止...... – hminaya 2009-10-25 20:01:02