【发布时间】:2011-02-07 22:34:25
【问题描述】:
如何在实体框架中使用事务?我在 Stackoverflow 上阅读了一些链接:Using Transactions or SaveChanges(false) and AcceptAllChanges()?
但是;我有 3 个表,所以我有 3 个实体:
CREATE TABLE Personel
(PersonelID integer PRIMARY KEY identity not null,
Ad varchar(30),
Soyad varchar(30),
Meslek varchar(100),
DogumTarihi datetime,
DogumYeri nvarchar(100),
PirimToplamı float);
Go
create TABLE Prim
(PrimID integer PRIMARY KEY identity not null,
PersonelID integer Foreign KEY references Personel(PersonelID),
SatisTutari int,
Prim float,
SatisTarihi Datetime);
Go
CREATE TABLE Finans
(ID integer PRIMARY KEY identity not null,
Tutar float);
人员、Prim、Finans 我的桌子。如果您查看 Prim 表,您可以看到 Prim 值浮动值,如果我写一个文本框而不是浮动值,我的事务必须运行。
using (TestEntities testCtx = new TestEntities())
{
using (TransactionScope scope = new TransactionScope())
{
// do something...
testCtx.Personel.SaveChanges();
// do something...
testCtx.Prim.SaveChanges();
// do something...
testCtx.Finans.SaveChanges();
scope.Complete();
success = true;
}
}
我该怎么做?
【问题讨论】:
-
他们使用 3 种不同的上下文......您要独立保存每个表吗?
-
你已经有了代码,还需要什么帮助?
-
是的,我想添加 3 个表,但我必须进行交易
-
你已经在你的事务范围内使用事务
标签: c# .net visual-studio-2008 entity-framework visual-studio-2010