我正在使用WCF RIA服务。我没有使用实体和直接sql的。 在我的情况下,存储过程和复杂类型都可以工作。所以我遇到了这样一个问题: 当我使用存储过程插入一行时,无法从数据库中自动更新其ID。在使用实体和直接sql的情况下一切顺利。 这是我的存储过程:
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
insert into Product
(
[Name]
,[Note] )
values
(
@Name,
@Note
)
select SCOPE_IDENTITY() as ID
END
解决这个问题的唯一方法是重新加载插入后的所有数据。我认为加载所有数据并不是一个好主意,只需要更新一行。第二种方法是写更多用于从SQL Server手动获取新id的代码,但我相信必须有更好的方法。