使用EF在执行数据库操作时,异常提示生成的表名和实际实体名称不一致的解决方案

栏目: 数据库 · 发布时间: 5年前

内容简介:最近同事在使用EF DBFIRST进行实体框架开发的时候,遇到了一个奇怪的问题,提示主外键约束存在问题,但是该表并没有设置外键,而且软件提示的数据库表名不存在,但是提示的数据库表名和我EF实体名称完全不一致,最后经过分析,找出了问题并解决,在此做一个记录,方便日后查阅!出现这种情况的主要原因是,在创建了数据库表并设置完主键以后,在后期的开发过程中人为的修改了数据库表名,造成之前生成的主键名称和现在的表名对不上,而EF在动态生成表名的时候会从EF中的主键名称中去查找表名,导致系统在修改表名以后出现还使用的是之

1 问题回放

最近同事在使用EF DBFIRST进行实体框架开发的时候,遇到了一个奇怪的问题,提示主外键约束存在问题,但是该表并没有设置外键,而且软件提示的数据库表名不存在,但是提示的数据库表名和我EF实体名称完全不一致,最后经过分析,找出了问题并解决,在此做一个记录,方便日后查阅!

2 问题产生原因

出现这种情况的主要原因是,在创建了数据库表并设置完主键以后,在后期的开发过程中人为的修改了数据库表名,造成之前生成的主键名称和现在的表名对不上,而EF在动态生成表名的时候会从EF中的主键名称中去查找表名,导致系统在修改表名以后出现还使用的是之前的主键名称,在生成 SQL 的时候,EF还是会按照之前的主键名称来生成表名,造成EF中的表名和实际的实体名称并不一致!

3 问题解决方案

大家记得在修改表名以后,可以删除之前的主键,再重新创建主键来解决该问题,或者手动修改主键名称也可以解决该问题!


以上所述就是小编给大家介绍的《使用EF在执行数据库操作时,异常提示生成的表名和实际实体名称不一致的解决方案》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

民事诉讼程序研究

民事诉讼程序研究

乔罗威茨 / 吴泽勇 / 2008-6 / 40.00元

《民事诉讼程序研究》共分为诉讼程式;扩散利益、分散利益和集体利益的保护;程式样式;当事人与法官;对判決的救济;程式改革。主要內容包括:民事诉讼;英美民事诉讼程式在20世纪的若干发展;论民事诉讼法的本质和目的等。一起来看看 《民事诉讼程序研究》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试