实体框架问题"表/视图'没有定义主键."

use*_*228 2 .net c# sql-server entity-framework

我是Entity Framework的新手.我正在使用现有数据库,并且表没有定义主键.当我使用Entity Framework时,我得到错误"表/视图'没有定义主键.已经推断出密钥,并且定义被创建为只读表/视图.".我查了几个堆栈溢出解决方案/谷歌,我还有一些问题,

  1. 不要EF使用标识列
  2. 我对将主键添加到表中持怀疑态度,因为它可能会影响上游/下游进程.
  3. 替代品/建议好吗?

谢谢,

Bru*_*lho 10

我在戴维斯博客(下面的链接)中找到了一个解决方法来解决这个错误,我会把它粘贴在这里. http://www.ericsdavis.net/index.php/2009/03/14/entity-framework-and-primary-key-inference/

  1. 如果Visual Studio中的模型设计器仍处于打开状态,请将其关闭,然后在XML编辑器中重新打开.edmx文件;
  2. 找到引用该表的edmx:StorageModels - > Schema - > Entity Container - > EntitySet元素;
  3. 在EntitySet元素上,将store:Schema属性重命名为Schema; 完全删除商店:名称属性;
  4. 删除打开和关闭DefiningQuery标记以及它们之间的所有内容;

保存并关闭.edmx文件.

它对我来说就像一个魅力,希望它有所帮助.