Поддержка параллельных транзакций в ADO.NET провайдере.

Привет всем.

На сайте IBProvider-a доступен для скачивания инсталлятор с новыми сборками .NET провайдера — 1.0.0.1946.

Основным нововведением является возможность создания параллельных транзакций в рамках одного подключения к базе данных. Пример.

После достаточно продолжительного размышления по поводу реализации этой функциональности, я пришел к выводу что надо просто создавать раздельные объекты OleDbConnection привязанные к одному COM-объекту подключения (OLEDB DataSource), но разным COM-объектам сессий (это OLEDB компоненты для управления транзакциями). По аналогии с решением для классического ADODB.

С этими «клонами» подключения можно без проблем работать в разных потоках — IBProvider обеспечивает всю необходимую синхронизацию.

Другие изменения.

1. Добавлен класс OleDbEnumerator. С его помощью можно перечислить OLEDB провайдеры зарегистрированные в системе.

2. Добавлен перегруженный метод OleDbConnection.GetSchema(string, object[]).

3. Переработана реализация OleDbConnectionStringBuilder. Это был самый первый класс который я реализовал в рамках .NET провайдера 🙂

Оставить комментарий