我的实体上下文与SQLServer 2008 R2有连接。
下面是我正在调用的代码,它非常简单,我已将它放在一个事务中来演示问题(事件虽然事务没有针对此示例的目的)
我收到服务器不可用的" MSDTC"调用保存更改时出错。但是,如果只使用一个上下文,我认为它不会升级到MSDTC。我错过了什么吗?
MyEntities entity = new MyEntities();
using (System.Transactions.TransactionScope ts = new System.Transactions.TransactionScope())
{
entityy.Groups.AddObject(new Group
{
InstanceId = 1000
,
Name = "TransactionGroup",
InsertedDate = DateTime.UtcNow,
LastUpdatedDate = DateTime.UtcNow,
InsertedBy = LoggedInUser,
LastUpdatedBy = LoggedInUser
});
entity.SaveChanges();
ts.Complete();
}
答案 0 :(得分:0)
使用声明在transactionscope内创建上下文(MyEntities实体)。
using(TransactionScope ts = new TransactionScope())
{
using(MyEntities entity = new MyEntities())
{
//... your code ...
//...
entity.SaveChanges();
}
ts.Complete();
}