I think the workaround in http://dotnetdevdude.com/Blog/2012/01/09/EntityFrameworkCodeFirstEnum.aspx is suitable. To apply the workaround:
1. Create two members for the field you want to use as enum type. In the below example,
SentencePart
is an enumaration which specifies parts of a sentence. SentencePartInt
holds an integer value whereas SentencePartEnum
is the member which is going to be used and processed in the code.
public Nullable SentencePartInt{ get; set; }
public Nullable<
SentencePart> SentencePartEnum
{
get { return ( SentencePart) SentencePartInt ; }
set { SentencePartInt = (int)value; }
}
2. Tell the database context not to persist the enum member.
modelBuilder.Entity().Ignore(x => x.
SentencePartEnum );
3. Use the enum member in the code, not the integer.
Hilal
YanıtlaSilThis is even better than Entity Framework:
https://www.kellermansoftware.com/p-47-net-data-access-layer.aspx