当我使用Entity Framework插入行时,我收到此错误:
元数据集合中不存在标识为“AutoNumber”的成员。\ r \ nParameter name:identity
问题是桌面上的插入触发器。
这是表结构:
CustomerID | (identity, auto increment)
FirstName |
LastName |
这是触发器:
CREATE TRIGGER [dbo].[TR_Customer_INSERT]
ON [dbo].[Customer]
FOR INSERT
AS
SET NOCOUNT ON
SELECT @@IDENTITY AS AutoNumber
RETURN
是否可以在不删除触发器的情况下使用Entity Framework?我能以某种方式定义'自动编号'吗?为什么不忽略触发器的结果?
更新:我放弃并删除了触发器。
答案 0 :(得分:1)
你不能这样做:
Select * from COMPONENT_TYPES_IN_SERVICE cts
其中cts.id = @ComponentTypeID;
它将COMPONENT_TYPES_IN_SERVICE记录返回给您的应用程序,EF尝试将返回的值复制到SERVICE中,因为它认为您正在传回一些数据库生成的值。
答案 1 :(得分:0)