在Entity框架中更新值并返回更新的值

时间:2011-07-27 19:57:27

标签: asp.net entity-framework asp.net-mvc-3 entity

我有一个用于在Sql Server 2008中实现序列的表。序列表只有1列,这是一个整数。

我想知道我是否可以做这样的事情

update dbo.MySequence set val=val+1 output inserted.val

并在不使用Entity Framework中的存储过程的情况下返回值。

感谢。

1 个答案:

答案 0 :(得分:0)

为什么要避免存储过程?使用存储过程是使用EF的一部分。您不必创建存储过程,但仍需要调用直接SQL(例如使用context.ExecuteStoreQuery)。例如,在MS SQL上,您可以使用:

DECLARE @val INT
UPDATE dbo.MySequence SET @val = val = val + 1
SELECT @val 

但是最好让序列命名(带附加列)。