Создание Windows-приложений на основе Visual C#

         

ConnectionString


Строка соединения ConnectionString определяет параметры, необходимые для установления соединения с источником данных. Строка соединений при использовании мастеров генерируется средой, но можно (и желательно — во избежание неточностей и ошибок) писать эту строчку вручную. Рассмотрим еще раз строки соединения, которые были созданы при подключении к базам данных xtreme и Northwind:

Листинг 4.10. База данных xtreme, проект ProgrammDataMDB (html, txt) string ConnectionString = "workstation id=7EA2B2F6068D473;packet size=4096;integrated security=SSPI;data sou" + "rce=\"(local)\";persist security info=False;initial catalog=NorthwindCS";

В этой строках через точку с запятой просто перечисляются параметры соединения. В таблице 4.2 приводятся основные значения этих параметров.

Таблица 4.2. Основные параметры ConnectionString

ПараметрОписание
ПараметрОписание
Provider (Поставщик)Свойство применяется для установки или возврата имени поставщика для соединения, используется только для объектов OleDbConnection
Connection Timeout или Connect Timeout (Время ожидания связи)Длительность времени ожидания связи с сервером перед завершением попытки и генерацией исключения в секундах. По умолчанию 15
Initial Catalog (Исходный каталог)Имя базы данных
Data Source (Источник данных)
Имя используемого SQL-сервера, когда установлено соединение, или имя файла базы данных Microsoft Access
Password (Пароль)Пользовательский пароль для учетной записи SQL Server.
User ID (Пользовательский ID)Пользовательское имя для учетной записи SQL Server
Workstation IDИмя рабочей станции или компьютера
Integrated Security или Trusted Connection (Интегрированная безопасность или Доверительное соединение) Параметр, который определяет, является ли соединение защищенным. True, False и SSPI — возможные значения. (SSPI – эквивалент True.)
Persist Security Info (Удержание защитной информации)Когда установлено False, нуждающаяся в защите информация, такая как пароль, не возвращается как часть соединения, если связь установлена или когда-либо была установленной. Выставление этого свойства в True может быть рискованным в плане безопасности. По умолчанию False


При создании строки ConnectionString Мастером происходит генерирование довольно многих лишних параметров. Нельзя сказать, что они не нужны, — просто Мастер предусматривает все возможности использования этого подключения и вставляет соответствующие значения. В действительности необходимых значений для простого извлечения данных всего несколько:

  • Provider (только OLE DB)
  • Data Source
  • Initial Catalog
  • User ID/Password
  • Persist Security Info


Скопируйте папки с проектами ProgrammDataMDB и ProgrammDataSQL. Переименуйте копии в ConnStringMDB и ConnStringSQL. Измените значения ConnectionString следующим образом:

Листинг 4.11. База данных xtreme, проект ConnStringMDB (html, txt) string ConnectionString = "workstation id=7EA2B2F6068D473;integrated security=SSPI; data source=\"(local)\";persist security info=False;initial catalog=NorthwindCS";

Мы значительно сократили количество параметров, получив прежнюю функциональность приложений.

Где определяется строка подключения, когда мы создаем объект DataAdapter не программно, а с помощью Мастера? Среда генерирует строку подключения вместе с кодом для DataAdapter, и в этом нетрудно убедиться. Запустите приложение, которое мы делали, вообще ничего не зная об объектах ADO.NET, — DataWizardMDB. Перейдите в код формы, откройте область Windows Form Designer generated code и найдите строку подключения:

Листинг 4.12.

(html, txt)

Когда мы переносим объект DataAdapter из панели инструментов Toolbox (со вкладки Data) на форму, вместе с ним образуется объект DBConnection, в свойствах которого указывается строка ConnectionString и другие параметры подключения (рис. 4.48)


увеличить изображение
Рис. 4.48.  Свойства объекта sqlConnection1 проекта VisualDataSQL


Содержание раздела