Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 如何防止OLEDB连接尝试登记到分布式事务中?_.net_Transactions_Oledb - Fatal编程技术网

.net 如何防止OLEDB连接尝试登记到分布式事务中?

.net 如何防止OLEDB连接尝试登记到分布式事务中?,.net,transactions,oledb,.net,Transactions,Oledb,我正在使用OleDB使用此连接字符串连接到excel文件 @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Extended Properties=""Excel 12.0 Xml;HDR=YES""" 但当我这样做时(在TransactionScope()中) 我得到以下错误 ITransactionLocal接口不可用 得到 “Microsoft.ACE.OLEDB.12.0”提供程序。 本地交易不可用 与当前提供程序一起使用 如何使O

我正在使用OleDB使用此连接字符串连接到excel文件

@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Extended Properties=""Excel 12.0 Xml;HDR=YES"""
但当我这样做时(在TransactionScope()中)

我得到以下错误

ITransactionLocal接口不可用 得到 “Microsoft.ACE.OLEDB.12.0”提供程序。 本地交易不可用 与当前提供程序一起使用


如何使OleDbConnection不尝试登记到分布式事务中?具有名为“登记”的ConnectionString属性,但我找不到OleDB的等效配置或方法。

在连接字符串中添加以下代码:
“OLE DB Services=-4;”

但这是本地事务,对吗?错误是只讨论本地的,而不是分布式的。我不确定你的情况,但可能是我在这里的职位[可能会对你有所帮助。是的,错误显示为本地交易,但没有明确的本地交易,只有交易范围这是一个奇妙的解决方案,它也拯救了我的培根!我讨厌这些东西是如何没有文件记录的…我想知道你是如何知道它的,Reza?我知道这已经3年了,但我偶然发现了这个解决方案,并想知道这是怎么回事它禁用ole db池和自动登记。更多信息见表4:
using (OleDbConnection conn = new OleDbConnection(connectionString))
{
    conn.Open();
    ...
}