我想将enum
映射到mysql
数据库。
class CommisionWorking
{
public enum Color{ O, PP, FP };
}
这是我的mapping
班级。
class CommisionWorkingMap : ClassMap<CommisionWorking>
{
public CommisionWorkingMap()
{
Map(x => x.Color).CustomType<typeof(Color));
}
这显示错误。 试图
Map(x=>x.Color).CustomType<GenericEnumMapper<Color>>
Map(x => x.Color).CustomType();
两者都显示错误。
请帮助。
答案 0 :(得分:0)
我想说,这里提到的解决方案没有什么不同:
Mapping enum with fluent nhibernate
因此,如果表格包含整数列,我们可以将其映射为:
// instead of any of these
// Map(x => x.Color).CustomType<typeof(Color));
// Map(x => x.Color).CustomType<GenericEnumMapper<Color>>
// Map(x => x.Color).CustomType();
// this will map color to integer column with values 0 == O, 1 == PP...
Map(o => o.Color);
如果您有字符串列(值为O,PP,...),那么您的尝试应该有效:
Map(x => x.Color).CustomType<GenericEnumMapper<Color>>
如此处所述:How do you map an enum as string in fluent nhibernate?