我如何使用 EF 4.x 进行事务更新锁定?我如何使用 EF 执行以下 MYSQL sql?
START TRANSACTION;
SELECT @A:=TagCount FROM TopicTag where Tag = 'SIMPLE' FOR UPDATE;
UPDATE TopicTag SET TagCount=@A+1 where Tag = 'SIMPLE';
COMMIT;
我如何使用 EF 4.x 进行事务更新锁定?我如何使用 EF 执行以下 MYSQL sql?
START TRANSACTION;
SELECT @A:=TagCount FROM TopicTag where Tag = 'SIMPLE' FOR UPDATE;
UPDATE TopicTag SET TagCount=@A+1 where Tag = 'SIMPLE';
COMMIT;
您可以使用TransactionScope
对象进行交易。MSDN 文档有示例用法。
在事务中,代码的核心部分可能如下所示:
var tag = context.TopicTags.Single(x => x.Tag == "SIMPLE");
tag.TagCount++;