Читаем Язык программирования C#9 и платформа .NET5 полностью

При работе с поставщиком данных первым делом понадобится установить сеанс с источником данных, используя объект подключения (производного от DbConnection типа). Объекты подключений .NET Core обеспечиваются форматированной строкой подключения, которая содержит несколько пар "имя-значение", разделенных точками с запятой. Такая информация идентифицирует имя машины, к которой нужно подключиться, требуемые настройки безопасности, имя базы данных на машине и другие специфичные для поставщика сведения.

Из приведенного выше кода можно сделать вывод, что имя Initial Catalog относится к базе данных, с которой необходимо установить сеанс. Имя Data Source идентифицирует имя машины, где находится база данных. Здесь применяется строка "., 5433", которая ссылается на хост-машину (точка соответствует localhost), и порт 5433, который представляет собой порт контейнера Docker, отображенный на порт SQL Server. Если бы вы использовали другой экземпляр, то определили бы свойство как имя_машины,порт\экземпляр. Например, MYSERVER\SQLSERVER2019 означает, что MYSERVER — имя сервера, на котором функционирует SQL Server, что применяется стандартный порт и что SQLSERVER2019 представляет собой имя экземпляра. Если машина является локальной по отношению к разработке, тогда можете использовать для имени сервера точку (.) или маркер (localhost). В случае стандартного экземпляра SQL Server имя экземпляра не указывается. Скажем, если вы создаете базу данных AutoLot в установленной копии Microsoft SQL Server, настроенной как стандартный экземпляр на вашем локальном компьютере, то могли бы применять "Data Source=localhost".

Кроме того, можно указать любое количество конструкций, которые представляют учетные данные безопасности. Если Integrated Security установлено в true, то для аутентификации и авторизации используется текущая учетная запись Windows.

Когда строка подключения готова, можно вызывать метод Open для установления подключения к базе данных. В дополнение к членам Connectionstring, Open и Close объект подключения предоставляет несколько членов, которые позволяют конфигурировать дополнительные настройки подключения, такие как таймаут и транзакционная информация. В табл. 21.4 кратко описаны избранные члены базового класса DbConnection.



Свойства типа DbConnection обычно по своей природе допускают только чтение и полезны, только если требуется получить характеристики подключения во время выполнения. Когда необходимо переопределить стандартные настройки, придется изменить саму строку подключения. Например, в следующей строке подключения время таймаута Connect Timeout устанавливается равным 30 секундам вместо стандартных 15 секунд (для SQL Server):


using(SqlConnection connection = new SqlConnection)

{

  connection.ConnectionString =

     @" Data Source=.,5433;User Id=sa;Password=P@ssw0rd;

     Initial Catalog=AutoLot;Connect Timeout=30";

  connection.Open;

}


Следующий код выводит детали о переданной ему строке подключения SqlConnection:


static void ShowConnectionStatus(SqlConnection connection)

{

  // Вывести различные сведения о текущем объекте подключения.

  Console.WriteLine("***** Info about your connection *****");

  Console.WriteLine($@"Database location:

    {connection.DataSource}");         // Местоположение базы данных

  Console.WriteLine($"Database name: {connection.Database}");

                                       // Имя базы данных

  Console.WriteLine($@"Timeout:

    {connection.ConnectionTimeout}");  // Таймаут

  Console.WriteLine($"Connection state:

    {connection.State}\n");            // Состояние подключения

}


Большинство этих свойств понятно без объяснений, но свойство State требует специального упоминания. Ему можно присвоить любое значение из перечисления ConnectionState:


public enum ConnectionState

{

  Broken,

  Closed,

  Connecting,

  Executing,

  Fetching,

  Open

}


Перейти на страницу:

Похожие книги

Программирование. Принципы и практика использования C++ Исправленное издание
Программирование. Принципы и практика использования C++ Исправленное издание

Специальное издание самой читаемой и содержащей наиболее достоверные сведения книги по C++. Книга написана Бьярне Страуструпом — автором языка программирования C++ — и является каноническим изложением возможностей этого языка. Помимо подробного описания собственно языка, на страницах книги вы найдете доказавшие свою эффективность подходы к решению разнообразных задач проектирования и программирования. Многочисленные примеры демонстрируют как хороший стиль программирования на С-совместимом ядре C++, так и современный -ориентированный подход к созданию программных продуктов. Третье издание бестселлера было существенно переработано автором. Результатом этой переработки стала большая доступность книги для новичков. В то же время, текст обогатился сведениями и методиками программирования, которые могут оказаться полезными даже для многоопытных специалистов по C++. Не обойдены вниманием и нововведения языка: стандартная библиотека шаблонов (STL), пространства имен (namespaces), механизм идентификации типов во время выполнения (RTTI), явные приведения типов (cast-операторы) и другие. Настоящее специальное издание отличается от третьего добавлением двух новых приложений (посвященных локализации и безопасной обработке исключений средствами стандартной библиотеки), довольно многочисленными уточнениями в остальном тексте, а также исправлением множества опечаток. Книга адресована программистам, использующим в своей повседневной работе C++. Она также будет полезна преподавателям, студентам и всем, кто хочет ознакомиться с описанием языка «из первых рук».

Бьёрн Страуструп , Ирина Сергеевна Козлова , Бьерн Страуструп , Валерий Федорович Альмухаметов

Программирование, программы, базы данных / Базы данных / Программирование / Учебная и научная литература / Образование и наука / Книги по IT
97 этюдов для архитекторов программных систем
97 этюдов для архитекторов программных систем

Успешная карьера архитектора программного обеспечения требует хорошего владения как технической, так и деловой сторонами вопросов, связанных с проектированием архитектуры. В этой необычной книге ведущие архитекторы ПО со всего света обсуждают важные принципы разработки, выходящие далеко за пределы чисто технических вопросов.?Архитектор ПО выполняет роль посредника между командой разработчиков и бизнес-руководством компании, поэтому чтобы добиться успеха в этой профессии, необходимо не только овладеть различными технологиями, но и обеспечить работу над проектом в соответствии с бизнес-целями. В книге более 50 архитекторов рассказывают о том, что считают самым важным в своей работе, дают советы, как организовать общение с другими участниками проекта, как снизить сложность архитектуры, как оказывать поддержку разработчикам. Они щедро делятся множеством полезных идей и приемов, которые вынесли из своего многолетнего опыта. Авторы надеются, что книга станет источником вдохновения и руководством к действию для многих профессиональных программистов.

Нил Форд , Билл де Ора , Майкл Хайгард

Программирование, программы, базы данных / Базы данных / Программирование / Книги по IT