EF4,SQLite,TPT层次结构和批量插入的问题

时间:2011-04-04 14:10:13

标签: entity-framework-4 system.data.sqlite table-per-type

使用EF4和SQLite ADO.NET提供程序时,我一直在努力解决以下问题:

我有一个带有TPT层次结构的模型:有一个抽象基础实体(Source),然后是第一级子实体(SingleSource和MultipleSource),以及第二级子实体(例如SingleSource下的FileSource)。

在我的应用程序中,我正在创建FileSource对象,并将它们添加到我的上下文中。一旦我在新的FileSource的每个Add操作之后调用了context.SaveChanges(),一切正常但是当我向我的上下文添加几个FileSource然后调用SaveChanges一次以保存它们时,我得到一个更新异常:

  

无法确定FK_Source_SingleSource_0关系的主要结尾。   多个添加的实体可能具有相同的主键

我注意到当我创建新的FileSource对象时,EF将它们的Id设置为0,即使它是一个标识字段(StoreGeneratedPattern = SSDL和CSDL上的标识),我怀疑这就是它失败的原因但我找不到任何解决方案,所以任何帮助都将不胜感激。

谢谢,

西蒙

0 个答案:

没有答案