在使用DatabaseGeneratedOption.Identity标记实体上的ID列之后,我开始出现此错误(出于某种原因,EF并不知道它是一个标识列,并且正在尝试在该列上插入值)。 / p>
我发现了这个问题:A dependent property in a ReferentialConstraint is mapped to a store-generated column。
但是,据我所知,我所有的关系都很好。我检查了每一个表,并检查了与我添加了DatabaseGeneratedOption.Identity的表相关的表。甚至更奇怪,错误中提到的专栏是“ID' - 我没有任何外键,其中依赖列是ID。我使用以下查询进行了检查,该查询未返回名为' ID':
的列SELECT Tab.TABLE_NAME, Col.Column_Name from
INFORMATION_SCHEMA.TABLE_CONSTRAINTS Tab,
INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE Col
WHERE
Col.Constraint_Name = Tab.Constraint_Name
AND Col.Table_Name = Tab.Table_Name
AND Constraint_Type = 'FOREIGN KEY '
无论如何确定哪个表具有违规外键,是否确实存在?我是否可以运行查询以确定标记为' Identity'也是外键关系中的依赖列?