Бөлісу құралы:


Установка подключения

Область применения: платформа .NET Framework .NET Standard

Скачать ADO.NET

Для создания подключения к Microsoft SQL Server используется объект SqlConnection поставщика данных Microsoft SqlClient для SQL Server. Сведения о безопасном хранении и извлечении строк подключения см. в статье Защита сведений о подключении.

Закрытие подключений

Рекомендуется всегда закрывать соединение после использования, чтобы обеспечить его возврат в пул. Блок Using в Visual Basic или C# автоматически удаляет соединение при выходе в коде из блока даже при наличии необработанного исключения. Дополнительные сведения об операторе using см. здесь и здесь.

Можно также использовать методы Close или Dispose объекта Connection. Соединения, которые явно не закрыты, нельзя добавить или вернуть в пул. Например, соединение, которое вышло за пределы области, но явно закрыто не было, будет возвращено в пул соединений только в том случае, если был достигнут максимальный размер этого пула, а соединение еще действует.

Примечание.

В методе Finalize вашего класса нельзя вызывать методы Close или Dispose объектов Connection, DataReader или любого другого управляемого объекта. В методе завершения следует только освобождать неуправляемые ресурсы, которыми ваш класс непосредственно владеет. Если класс не владеет какими-либо неуправляемыми ресурсами, не включайте в его определение метод Finalize. Дополнительные сведения см. в статье Сборка мусора.

Примечание.

События входа в систему и выхода из системы не вызываются на сервере при выборке подключения из пула подключений и при возврате его в пул подключений, поскольку при возврате в пул подключений подключение фактически не закрывается. Дополнительные сведения см. в разделе Объединение подключений в пул в SQL Server (ADO.NET).

Подключение к SQL Server

Сведения о допустимых именах и значениях формата строки см. в свойстве ConnectionString объекта SqlConnection. Можно также использовать класс SqlConnectionStringBuilder для создания синтаксически правильных строк соединения во время выполнения. Дополнительные сведения см. в статье Connection String Builders (Построители строк подключения).

В следующем примере кода демонстрируется способ создания и открытия соединения с базой данных SQL Server.

using Microsoft.Data.SqlClient;

class Program1
{
    static void Main()
    {
        string s = GetConnectionString();

        OpenSqlConnection(s);
        Console.ReadLine();
    }

    private static void OpenSqlConnection(string connectionString)
    {
        using (SqlConnection connection = new SqlConnection(connectionString))
        {
            connection.Open();
            Console.WriteLine("ServerVersion: {0}", connection.ServerVersion);
            Console.WriteLine("State: {0}", connection.State);
        }
    }

    static private string GetConnectionString()
    {
        // To avoid storing the connection string in your code, 
        // you can retrieve it from a configuration file, using the 
        // System.Configuration.ConfigurationSettings.AppSettings property 
        return "Data Source=(local);Initial Catalog=AdventureWorks;"
            + "Integrated Security=SSPI;";
    }
}

Встроенные функции безопасности и ASP.NET

Встроенные функции безопасности (доверенные соединения) SQL Server помогают обеспечить защиту при подключении к SQL Server, позволяя не передавать идентификатор пользователя и пароль в строке подключения, поэтому именно этот метод проверки подлинности подключения рекомендуется к использованию. Встроенная безопасность основана на использовании текущего идентификатора безопасности, или маркера выполняемого процесса. Для классических приложений этим удостоверением обычно является идентификатор выполнившего вход пользователя.

Идентификатор безопасности приложений ASP.NET может быть настроен на получение одного из нескольких различных параметров. Чтобы лучше понять удостоверение безопасности, используемое приложением ASP.NET при подключении к SQL Server, см . статью ASP.NET олицетворение, ASP.NET аутентификацию и практическое руководство. Доступ к SQL Server с помощью интегрированной безопасности Windows.

См. также