C# 无法在表';中插入标识列的显式值;MyTable';当IDENTITY_INSERT设置为OFF时
我在数据库中添加了一个名为JobFieldMapping的新表,并将一个字段设置为主键和标识(1,1)。我更新了.edmx文件。 因此,所有这些都应该可以正常工作,但在savechanges()上我得到了错误: 当identity_insert设置为OFF时,无法在表“JobFieldMapping”中为identity列插入显式值 这很奇怪,因为我在代码中没有为主键字段设置任何内容:C# 无法在表';中插入标识列的显式值;MyTable';当IDENTITY_INSERT设置为OFF时,c#,asp.net,entity-framework,edmx,C#,Asp.net,Entity Framework,Edmx,我在数据库中添加了一个名为JobFieldMapping的新表,并将一个字段设置为主键和标识(1,1)。我更新了.edmx文件。 因此,所有这些都应该可以正常工作,但在savechanges()上我得到了错误: 当identity_insert设置为OFF时,无法在表“JobFieldMapping”中为identity列插入显式值 这很奇怪,因为我在代码中没有为主键字段设置任何内容: db.JobFieldMappings.Add(new JobFieldMapping {
db.JobFieldMappings.Add(new JobFieldMapping {
FKID = tempID,
FieldName = "test",
FieldTitle = "test"
});
db.SaveChanges();
以下是PK字段的属性:
这是表的xml
<EntityType Name="JobFieldMapping">
<Key>
<PropertyRef Name="JobFieldMappingID" />
</Key>
<Property Name="JobFieldMappingID" Type="int" StoreGeneratedPattern="Identity" Nullable="false" />
<Property Name="FKID " Type="int" Nullable="false" />
<Property Name="FieldName" Type="nvarchar" MaxLength="500" Nullable="false" />
<Property Name="FieldTitle" Type="nvarchar" MaxLength="500" Nullable="false" />
</EntityType>
我尝试多次更新.edmx文件,删除并重新生成它,但总是出现相同的错误。生成的SQL是什么样子的?(使用SQL事件探查器查看)@tschmit007必须关闭标识插入,这样PK字段将自动递增