Природно, що дана послідовність дій може повторюватися скільки завгодно разів, поки не будуть створені і не заповнені всі члени об'єкта DataSet.
Далі буде розглянуто приклад використання об'єкта DataSet для прочитання інформації з текстового файлу. При цьому використовується метод класу string Split (). який забезпечує виділення з вихідної рядки подстрок з їх подальшим перетворенням в символьні масиви. Критерієм виділення підрядка є масив символів-роздільників або цілочисельне значення. визначальне максимальну довжину підрядка.
Застосування класу DataSet
Під'єднані об'єкти моделі ADO .NET. провайдери
Постачальник дані про програму (Провайдер) - об'єкт. призначений для забезпечення взаємодії додатка з сховищем інформації (базами даних).
Природно, з додатком немає ніякого діла до того, де зберігається і як витягується споживана додатком інформація. Для додатка джерелом даних є той, хто передає дані з додатком. І як сам цей джерело цю інформацію видобуває - нікого не стосується.
Джерело даних (Data Provider) - це набір взаємопов'язаних компонентів, що забезпечують доступ до даних. Функціональність і саме існування провайдера забезпечується набором класів, спеціально для цієї мети розроблених.
ADO. NET підтримує два типи джерел даних, відповідно, два безлічі класів:
- SQL Managed Provider (SQL Server.NET Data Provider) - для роботи з Microsoft SQL Server 7.0 і вище. Працює зі спеціального протоколу, званого TabularData Stream (TDS) і не використовує ні ADO, ні ODBC, ні будь-яку ще технологію. Орієнтований спеціально на MS SQL Server, протокол дозволяє збільшити швидкість передачі даних і тим самим підвищити загальну продуктивність програми;
- ADO Managed Provider (OleDb.NET Data Provider) - для всіх інших баз даних. Забезпечує роботу з довільними базами даних. Однак за рахунок універсальності є програш в порівнянні з SQL Server Provider. так що при роботі з SQL Server рекомендовано використовувати спеціалізовані класи.
У наступних розділах наводиться опис складових елементів провайдера.
Connection
Об'єкт - представник класу Connection представляє з'єднання з джерелом (базою) даних і забезпечує підключення до бази даних. Visual Studio. NET підтримує два класи:
- SQLConnection (забезпечує підключення до SQL Server 7.0 і вище),
- OleDbConnection (забезпечує підключення до інших варіантів БД).
Компонента Connection (незалежно від того, представником якого класу вона є) має властивість ConnectionString. в якому фіксується вся необхідна для підтримання зв'язку з БД інформація. Крім того, підтримується ряд методів, що дозволяють обробляти дані з застосуванням транзакцій.
Властивості об'єкта Connection дозволяють:
- задавати реквізити користувача;
- вказувати розташування джерела даних.
Методи об'єкта дозволяють управляти з'єднанням з джерелом даних.
В процесі з'єднання за допомогою об'єкта - представника класу OleDbConnection (аналогічно SQLConnection) створюється і ініціалізується відповідний об'єкт з використанням одного з варіантів конструктора і рядки з'єднання.
Формування рядки і послідовність дій при ініціалізації об'єкта з'єднання - справа техніки. Головне - це щоб властивість ConnectionString в результаті отримало б посилання на рядок символів, що містить необхідну для встановлення з'єднання інформацію.
Властивості, методи та події класу OleDbConnection
Finalize (успадковано від Component)
Перевизначений. Звільняє некеровані ресурси і виконує інші дії по очищенню, перед тим як простір, яке використовує Component. буде відновлено складальником сміття.
У мовах C # і C ++ для функцій фіналізації використовується синтаксис деструктора
GetService (успадковано від Component)
Повертає об'єкт, що представляє службу, яку надає Component або його Container
MemberwiseClone (успадковано від Object)
Створює неповну копію поточного Object