我使用OleDB使用此连接字符串连接到Excel文件
@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Extended Properties=""Excel 12.0 Xml;HDR=YES"""
但是当我这样做时(在TransactionScope()内)
using (OleDbConnection conn = new OleDbConnection(connectionString))
{
conn.Open();
...
}
我收到以下错误
ITransactionLocal接口不是 得到了支持 'Microsoft.ACE.OLEDB.12.0'提供商。 本地交易不可用 与当前的提供商合作。
如何让OleDbConnection不尝试在分布式事务中登记? SqlConnection class有一个名为'Enlist'的ConnectionString属性,但我找不到OleDB的等效配置或方法。
答案 0 :(得分:12)
在连接字符串中添加以下代码: “; OLE DB Services = -4;”