Как мне не дать OleDbConnection попытаться подключиться к распределенной транзакции?

Я использую 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 имеет свойство ConnectionString, называемое Enlist, но я не могу найти эквивалентную конфигурацию или метод для OleDB.

1 ответ

Решение

В строке подключения добавьте следующий код: ";OLE DB Services=-4;"

Другие вопросы по тегам