Kha*_*meh 2 database entity-framework poco c#-4.0
我试图将存在于我的模型中的枚举保存到数据库,但每次我做实体Framwework抱怨没有与Enum关联的查找表.我不想要查找表,我只想让枚举存在于代码中并作为整数存储在数据库中.
保存不公开其关系的外键属性的实体时发生错误.EntityEntries属性将返回null,因为无法将单个实体标识为异常的来源.通过在实体类型中公开外键属性,可以更轻松地在保存时处理异常.有关详细信息,请参阅InnerException.
"无法将值NULL插入列'Type',表'Test.dbo.Interests';列不允许空值.INSERT失败.\ r \n语句已终止.
Type的值绝对不是null,EF只是因为它找不到我不想要的外键表.
如何让实体框架将我的枚举视为一个int,然后当我调用数据库来检索我的模型时转换回来?
实体框架根本不支持枚举,因此您无法将枚举属性映射到数据库.您必须使用int属性,如果您还需要枚举,则必须定义另一个未映射的属性(如果是自动生成的实体,则必须在分部类中定义它),将int转换为枚举.
编辑:在以后的版本中添加了枚举支持.如果要映射枚举(整数值,而不是字符串),则需要使用.NET 4.5和EF5或EF6.x和.NET 4.x.
| 归档时间: |
|
| 查看次数: |
3637 次 |
| 最近记录: |