【发布时间】:2025-12-28 20:30:07
【问题描述】:
我们正在尝试实现一个快速原型,以证明实体框架可以实现某些功能...
我们有一个不支持事务的 Informix DB - 是否可以将实体框架与它一起使用?
我们有一个有效的模型和有效的提供者,但我们似乎无法在没有事务启动的情况下执行 CRUD 查询 - 我们甚至试图压制它们......
[Test]
public void TestMethod1()
{
entities ent = new entities();
var a = ent.brands.Select(x => x);
using (TransactionScope trans = new TransactionScope(
TransactionScopeOption.Suppress))
{
ent.brands.AddObject(new brand() { br_name = "New Test Brand" });
ent.SaveChanges();
}
}
我们得到的错误如下:
在提供程序连接上启动事务时出错。有关详细信息,请参阅内部异常。
我环顾四周,建议使用抑制,但它似乎不起作用......有什么想法吗?
【问题讨论】:
-
内部异常是什么?
-
“我们有一个不支持事务的 Informix DB”——但 IIRC 甚至 Informix 7 也支持(非嵌套)事务——?我怀疑是否由驱动程序来遵守 supress 标志,因此这可能是 IBM 数据提供程序的错误。
标签: c# entity-framework transactions informix transactionscope