Udostępnij za pośrednictwem


SqlConnectionStringBuilder Klasa

Definicja

Zapewnia prosty sposób tworzenia zawartości parametrów połączenia używanych przez klasę SqlConnection i zarządzania nimi.

public ref class SqlConnectionStringBuilder sealed : System::Data::Common::DbConnectionStringBuilder
public sealed class SqlConnectionStringBuilder : System.Data.Common.DbConnectionStringBuilder
[System.ComponentModel.TypeConverter(typeof(System.Data.SqlClient.SqlConnectionStringBuilder+SqlConnectionStringBuilderConverter))]
public sealed class SqlConnectionStringBuilder : System.Data.Common.DbConnectionStringBuilder
type SqlConnectionStringBuilder = class
    inherit DbConnectionStringBuilder
[<System.ComponentModel.TypeConverter(typeof(System.Data.SqlClient.SqlConnectionStringBuilder+SqlConnectionStringBuilderConverter))>]
type SqlConnectionStringBuilder = class
    inherit DbConnectionStringBuilder
Public NotInheritable Class SqlConnectionStringBuilder
Inherits DbConnectionStringBuilder
Dziedziczenie
SqlConnectionStringBuilder
Atrybuty

Przykłady

Poniższa aplikacja konsolowa tworzy parametry połączenia dla bazy danych programu SQL Server. Kod używa klasy SqlConnectionStringBuilder do utworzenia parametrów połączenia. Następnie przykład analizuje parametry połączenia i demonstruje różne sposoby manipulowania jego zawartością.

// Create a new SqlConnectionStringBuilder and
// initialize it with a few name/value pairs.
SqlConnectionStringBuilder builder = new(
    "Server=(local);Integrated Security=true;" +
    "Initial Catalog=AdventureWorks"
    );

// The input connection string used the
// Server key, but the new connection string uses
// the well-known Data Source key instead.
Console.WriteLine($"Original connection string: '{builder.ConnectionString}'");

// Now that the connection string has been parsed,
// you can work with individual items.
Console.WriteLine($"Initial catalog: '{builder.InitialCatalog}'");
builder.InitialCatalog = "Northwind";
builder.AsynchronousProcessing = true;

// You can refer to connection keys using strings,
// as well. When you use this technique (the default
// Item property in Visual Basic, or the indexer in C#),
// you can specify any synonym for the connection string key name.
builder["Server"] = ".";
builder["Connect Timeout"] = 1000;
builder["Trusted_Connection"] = true;
Console.WriteLine($"Modified connection string: '{builder.ConnectionString}'");
Imports System.Data.SqlClient

Module Module1
    Sub Main()
        ' Create a new SqlConnectionStringBuilder and
        ' initialize it with a few name/value pairs:
        Dim builder As New SqlConnectionStringBuilder(
            "Server=(local);Integrated Security=true;" &
            "Initial Catalog=AdventureWorks"
            )

        ' The input connection string used the 
        ' Server key, but the new connection string uses
        ' the well-known Data Source key instead.
        Console.WriteLine("Original connection string: " + builder.ConnectionString)

        ' Now that the connection string has been parsed,
        ' you can work with individual items.
        Console.WriteLine("Initial catalog: " + builder.InitialCatalog)
        builder.InitialCatalog = "Northwind"
        builder.AsynchronousProcessing = True

        ' You can refer to connection keys using strings, 
        ' as well. When you use this technique (the default
        ' Item property in Visual Basic, or the indexer in C#)
        ' you can specify any synonym for the connection string key
        ' name.
        builder("Server") = "."
        builder("Connect Timeout") = 1000

        ' The Item property is the default for the class, 
        ' and setting the Item property adds the value to the 
        ' dictionary, if necessary. 
        builder.Item("Trusted_Connection") = True
        Console.WriteLine("Modified connection string: " + builder.ConnectionString)
    End Sub
End Module

Uwagi

Konstruktor parametrów połączenia umożliwia deweloperom programowe tworzenie syntaktycznie poprawnych parametrów połączenia oraz analizowanie i ponowne kompilowanie istniejących parametrów połączenia przy użyciu właściwości i metod klasy. Konstruktor parametrów połączenia udostępnia silnie typizowane właściwości odpowiadające znanym parom klucz/wartość dozwolonym przez program SQL Server. Jeśli musisz utworzyć parametry połączenia w ramach aplikacji, możesz użyć klasy SqlConnectionStringBuilder do kompilowania i modyfikowania parametrów połączenia. Klasa ułatwia również zarządzanie parametrami połączenia przechowywanymi w pliku konfiguracji aplikacji.

SqlConnectionStringBuilder przeprowadza kontrole prawidłowych par klucz/wartość. W związku z tym nie można użyć tej klasy do utworzenia nieprawidłowych parametrów połączenia; Próba dodania nieprawidłowych par zgłosi wyjątek. Klasa utrzymuje stałą kolekcję synonimów i może tłumaczyć się z synonimu na odpowiednią dobrze znaną nazwę klucza.

Na przykład w przypadku użycia właściwości Item w celu pobrania wartości można określić ciąg zawierający dowolny synonim potrzebnego klucza. Można na przykład określić "Adres sieciowy", "addr" lub dowolny inny akceptowalny synonim dla tego klucza w parametrach połączenia, gdy używasz dowolnego elementu członkowskiego, który wymaga parametrów zawierających nazwę klucza, na przykład właściwość Item[String] lub metodę Remove. Zobacz właściwość ConnectionString, aby uzyskać pełną listę dopuszczalnych synonimów.

Właściwość Item[String] obsługuje próby wstawienia złośliwych wpisów. Na przykład poniższy kod, używając domyślnej właściwości Item (indeksator, w języku C#) poprawnie unika zagnieżdżonej pary klucz/wartość:

Dim builder As New System.Data.SqlClient.SqlConnectionStringBuilder
builder("Data Source") = "(local)"
builder("Integrated Security") = True
builder("Initial Catalog") = "AdventureWorks;NewValue=Bad"
Console.WriteLine(builder.ConnectionString)
System.Data.SqlClient.SqlConnectionStringBuilder builder =
  new System.Data.SqlClient.SqlConnectionStringBuilder();
builder["Data Source"] = "(local)";
builder["integrated Security"] = true;
builder["Initial Catalog"] = "AdventureWorks;NewValue=Bad";
Console.WriteLine(builder.ConnectionString);

Wynikiem są następujące parametry połączenia, które obsługują nieprawidłową wartość w bezpieczny sposób:

Source=(local);Initial Catalog="AdventureWorks;NewValue=Bad";
Integrated Security=True

Konstruktory

SqlConnectionStringBuilder()

Inicjuje nowe wystąpienie klasy SqlConnectionStringBuilder.

SqlConnectionStringBuilder(String)

Inicjuje nowe wystąpienie klasy SqlConnectionStringBuilder. Podane parametry połączenia zawierają dane dla informacji o wewnętrznym połączeniu wystąpienia.

Właściwości

ApplicationIntent

Deklaruje typ obciążenia aplikacji podczas nawiązywania połączenia z bazą danych w grupie dostępności programu SQL Server. Możesz ustawić wartość tej właściwości przy użyciu ApplicationIntent. Aby uzyskać więcej informacji na temat obsługi klienta SqlClient dla zawsze włączonych grup dostępności, zobacz SqlClient Support for High Availability, Disaster Recovery.

ApplicationName

Pobiera lub ustawia nazwę aplikacji skojarzonej z parametrami połączenia.

AsynchronousProcessing

Pobiera lub ustawia wartość logiczną wskazującą, czy przetwarzanie asynchroniczne jest dozwolone przez połączenie utworzone przy użyciu tych parametrów połączenia.

AttachDBFilename

Pobiera lub ustawia ciąg zawierający nazwę podstawowego pliku danych. Obejmuje to pełną nazwę ścieżki dołączanej bazy danych.

Authentication

Pobiera uwierzytelnianie parametrów połączenia.

BrowsableConnectionString

Pobiera lub ustawia wartość wskazującą, czy właściwość ConnectionString jest widoczna dla projektantów programu Visual Studio.

(Odziedziczone po DbConnectionStringBuilder)
ColumnEncryptionSetting

Pobiera lub ustawia ustawienia szyfrowania kolumn dla konstruktora parametrów połączenia.

ConnectionReset
Przestarzałe.

Przestarzały. Pobiera lub ustawia wartość logiczną wskazującą, czy połączenie jest resetowane podczas pobierania z puli połączeń.

ConnectionString

Pobiera lub ustawia parametry połączenia skojarzone z DbConnectionStringBuilder.

(Odziedziczone po DbConnectionStringBuilder)
ConnectRetryCount

Liczba ponownych połączeń podjęta po zidentyfikowaniu, że wystąpił błąd bezczynności połączenia. Musi to być liczba całkowita z zakresu od 0 do 255. Wartość domyślna to 1. Ustaw wartość 0, aby wyłączyć ponowne nawiązywanie połączenia w przypadku niepowodzeń bezczynności połączenia. W przypadku ustawienia wartości poza dozwolonym zakresem zostanie zgłoszony ArgumentException.

ConnectRetryInterval

Czas (w sekundach) między każdą ponowną próbą nawiązania połączenia po zidentyfikowaniu, że wystąpił błąd bezczynności połączenia. Musi to być liczba całkowita z zakresu od 1 do 60. Wartość domyślna to 10 sekund. W przypadku ustawienia wartości poza dozwolonym zakresem zostanie zgłoszony ArgumentException.

ConnectTimeout

Pobiera lub ustawia czas oczekiwania na połączenie z serwerem (w sekundach) przed zakończeniem próby i wygenerowaniem błędu.

ContextConnection

Pobiera lub ustawia wartość wskazującą, czy należy nawiązać połączenie klienta/serwera, czy w procesie z programem SQL Server.

Count

Pobiera bieżącą liczbę kluczy zawartych we właściwości ConnectionString.

(Odziedziczone po DbConnectionStringBuilder)
CurrentLanguage

Pobiera lub ustawia nazwę rekordu języka programu SQL Server.

DataSource

Pobiera lub ustawia nazwę lub adres sieciowy wystąpienia programu SQL Server do nawiązania połączenia.

EnclaveAttestationUrl

Pobiera lub ustawia adres URL zaświadczania enklawy, który ma być używany z enklawą opartą na funkcji Always Encrypted.

Encrypt

Pobiera lub ustawia wartość logiczną wskazującą, czy program SQL Server używa szyfrowania SSL dla wszystkich danych wysyłanych między klientem a serwerem, jeśli serwer ma zainstalowany certyfikat.

Enlist

Pobiera lub ustawia wartość logiczną wskazującą, czy program puli połączeń programu SQL Server automatycznie zapisuje połączenie w bieżącym kontekście transakcji wątku tworzenia.

FailoverPartner

Pobiera lub ustawia nazwę lub adres serwera partnerskiego w celu nawiązania połączenia, jeśli serwer podstawowy nie działa.

InitialCatalog

Pobiera lub ustawia nazwę bazy danych skojarzonej z połączeniem.

IntegratedSecurity

Pobiera lub ustawia wartość logiczną wskazującą, czy identyfikator użytkownika i hasło są określone w połączeniu (gdy false) lub czy bieżące poświadczenia konta systemu Windows są używane do uwierzytelniania (gdy true).

IsFixedSize

Pobiera wartość wskazującą, czy SqlConnectionStringBuilder ma stały rozmiar.

IsFixedSize

Pobiera wartość wskazującą, czy DbConnectionStringBuilder ma stały rozmiar.

(Odziedziczone po DbConnectionStringBuilder)
IsReadOnly

Pobiera wartość wskazującą, czy DbConnectionStringBuilder jest tylko do odczytu.

(Odziedziczone po DbConnectionStringBuilder)
Item[String]

Pobiera lub ustawia wartość skojarzona z określonym kluczem. W języku C#ta właściwość jest indeksatorem.

Keys

Pobiera ICollection, który zawiera klucze w SqlConnectionStringBuilder.

LoadBalanceTimeout

Pobiera lub ustawia minimalny czas (w sekundach) dla połączenia na żywo w puli połączeń przed zniszczeniem.

MaxPoolSize

Pobiera lub ustawia maksymalną liczbę połączeń dozwolonych w puli połączeń dla tych określonych parametrów połączenia.

MinPoolSize

Pobiera lub ustawia minimalną liczbę połączeń dozwolonych w puli połączeń dla tych określonych parametrów połączenia.

MultipleActiveResultSets

W przypadku wartości true aplikacja może obsługiwać wiele aktywnych zestawów wyników (MARS). Jeśli wartość false, aplikacja musi przetworzyć lub anulować wszystkie zestawy wyników z jednej partii, zanim będzie mogła wykonać dowolną inną partię w tym połączeniu.

Aby uzyskać więcej informacji, zobacz wiele aktywnych zestawów wyników (MARS).

MultiSubnetFailover

Jeśli aplikacja łączy się z zawsze włączoną grupą dostępności lub zawsze włączonym wystąpieniem klastra trybu failover (FCI) w różnych podsieciach, ustawienie parametru MultiSubnetFailover=true zapewnia szybsze wykrywanie i nawiązywanie połączenia z (obecnie) aktywnym serwerem. Aby uzyskać więcej informacji na temat obsługi klienta SqlClient dla funkcji Always On, zobacz SqlClient Support for High Availability, Disaster Recovery.

NetworkLibrary

Pobiera lub ustawia ciąg zawierający nazwę biblioteki sieciowej używanej do nawiązania połączenia z programem SQL Server.

PacketSize

Pobiera lub ustawia rozmiar w bajtach pakietów sieciowych używanych do komunikowania się z wystąpieniem programu SQL Server.

Password

Pobiera lub ustawia hasło dla konta programu SQL Server.

PersistSecurityInfo

Pobiera lub ustawia wartość wskazującą, czy informacje poufne zabezpieczeń, takie jak hasło lub token dostępu, powinny być zwracane jako część parametrów połączenia w połączeniu utworzonym za pomocą tego SqlConnectionStringBuilder po tym połączeniu, kiedykolwiek było otwarte.

PoolBlockingPeriod

Zachowanie okresu blokowania dla puli połączeń.

Pooling

Pobiera lub ustawia wartość logiczną wskazującą, czy połączenie zostanie otwarte w puli, czy jawnie otwarte za każdym razem, gdy jest wymagane połączenie.

Replication

Pobiera lub ustawia wartość logiczną wskazującą, czy replikacja jest obsługiwana przy użyciu połączenia.

TransactionBinding

Pobiera lub ustawia wartość parametrów wskazującą, w jaki sposób połączenie utrzymuje skojarzenie z transakcją System.Transactions.

TransparentNetworkIPResolution

Gdy wartość tego klucza jest ustawiona na true, aplikacja jest wymagana do pobrania wszystkich adresów IP dla określonego wpisu DNS i podjęcia próby nawiązania połączenia z pierwszym na liście. Jeśli połączenie nie zostanie nawiązane w ciągu 0,5 sekundy, aplikacja spróbuje nawiązać połączenie ze wszystkimi innymi osobami równolegle. Po pierwszych odpowiedziach aplikacja ustanowi połączenie z adresem IP respondenta.

TrustServerCertificate

Pobiera lub ustawia wartość wskazującą, czy kanał zostanie zaszyfrowany podczas pomijania chodzenia łańcuchem certyfikatów w celu zweryfikowania zaufania.

TypeSystemVersion

Pobiera lub ustawia wartość ciągu, która wskazuje system typów oczekiwany przez aplikację.

UserID

Pobiera lub ustawia identyfikator użytkownika, który ma być używany podczas nawiązywania połączenia z programem SQL Server.

UserInstance

Pobiera lub ustawia wartość wskazującą, czy przekierować połączenie z domyślnego wystąpienia programu SQL Server Express do wystąpienia zainicjowanego przez środowisko uruchomieniowe uruchomione na koncie obiektu wywołującego.

Values

Pobiera ICollection, który zawiera wartości w SqlConnectionStringBuilder.

WorkstationID

Pobiera lub ustawia nazwę stacji roboczej łączącej się z programem SQL Server.

Metody

Add(String, Object)

Dodaje wpis z określonym kluczem i wartością do DbConnectionStringBuilder.

(Odziedziczone po DbConnectionStringBuilder)
Clear()

Czyści zawartość wystąpienia SqlConnectionStringBuilder.

ClearPropertyDescriptors()

Czyści kolekcję obiektów PropertyDescriptor na skojarzonym DbConnectionStringBuilder.

(Odziedziczone po DbConnectionStringBuilder)
ContainsKey(String)

Określa, czy SqlConnectionStringBuilder zawiera określony klucz.

Equals(Object)

Określa, czy określony obiekt jest równy bieżącemu obiektowi.

(Odziedziczone po Object)
EquivalentTo(DbConnectionStringBuilder)

Porównuje informacje o połączeniu w tym obiekcie DbConnectionStringBuilder z informacjami o połączeniu w podanym obiekcie.

(Odziedziczone po DbConnectionStringBuilder)
GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetProperties(Hashtable)

Wypełnia podaną Hashtable informacjami o wszystkich właściwościach tego DbConnectionStringBuilder.

(Odziedziczone po DbConnectionStringBuilder)
GetType()

Pobiera Type bieżącego wystąpienia.

(Odziedziczone po Object)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Object.

(Odziedziczone po Object)
Remove(String)

Usuwa wpis z określonym kluczem z wystąpienia SqlConnectionStringBuilder.

ShouldSerialize(String)

Wskazuje, czy określony klucz istnieje w tym wystąpieniu SqlConnectionStringBuilder.

ToString()

Zwraca parametry połączenia skojarzone z tym DbConnectionStringBuilder.

(Odziedziczone po DbConnectionStringBuilder)
TryGetValue(String, Object)

Pobiera wartość odpowiadającą podanemu kluczowi z tego SqlConnectionStringBuilder.

Jawne implementacje interfejsu

ICollection.CopyTo(Array, Int32)

Kopiuje elementy ICollection do Array, począwszy od określonego indeksu Array.

(Odziedziczone po DbConnectionStringBuilder)
ICollection.IsSynchronized

Pobiera wartość wskazującą, czy dostęp do ICollection jest synchronizowany (bezpieczny wątek).

(Odziedziczone po DbConnectionStringBuilder)
ICollection.SyncRoot

Pobiera obiekt, który może służyć do synchronizowania dostępu do ICollection.

(Odziedziczone po DbConnectionStringBuilder)
ICustomTypeDescriptor.GetAttributes()

Zwraca kolekcję atrybutów niestandardowych dla tego wystąpienia składnika.

(Odziedziczone po DbConnectionStringBuilder)
ICustomTypeDescriptor.GetClassName()

Zwraca nazwę klasy tego wystąpienia składnika.

(Odziedziczone po DbConnectionStringBuilder)
ICustomTypeDescriptor.GetComponentName()

Zwraca nazwę tego wystąpienia składnika.

(Odziedziczone po DbConnectionStringBuilder)
ICustomTypeDescriptor.GetConverter()

Zwraca konwerter typów dla tego wystąpienia składnika.

(Odziedziczone po DbConnectionStringBuilder)
ICustomTypeDescriptor.GetDefaultEvent()

Zwraca zdarzenie domyślne dla tego wystąpienia składnika.

(Odziedziczone po DbConnectionStringBuilder)
ICustomTypeDescriptor.GetDefaultProperty()

Zwraca właściwość domyślną dla tego wystąpienia składnika.

(Odziedziczone po DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEditor(Type)

Zwraca edytor określonego typu dla tego wystąpienia składnika.

(Odziedziczone po DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEvents()

Zwraca zdarzenia dla tego wystąpienia składnika.

(Odziedziczone po DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEvents(Attribute[])

Zwraca zdarzenia dla tego wystąpienia składnika przy użyciu określonej tablicy atrybutów jako filtru.

(Odziedziczone po DbConnectionStringBuilder)
ICustomTypeDescriptor.GetProperties()

Zwraca właściwości tego wystąpienia składnika.

(Odziedziczone po DbConnectionStringBuilder)
ICustomTypeDescriptor.GetProperties(Attribute[])

Zwraca właściwości tego wystąpienia składnika przy użyciu tablicy atrybutów jako filtru.

(Odziedziczone po DbConnectionStringBuilder)
ICustomTypeDescriptor.GetPropertyOwner(PropertyDescriptor)

Zwraca obiekt, który zawiera właściwość opisaną przez określony deskryptor właściwości.

(Odziedziczone po DbConnectionStringBuilder)
IDictionary.Add(Object, Object)

Dodaje element z podanym kluczem i wartością do obiektu IDictionary.

(Odziedziczone po DbConnectionStringBuilder)
IDictionary.Contains(Object)

Określa, czy obiekt IDictionary zawiera element z określonym kluczem.

(Odziedziczone po DbConnectionStringBuilder)
IDictionary.GetEnumerator()

Zwraca obiekt IDictionaryEnumerator dla obiektu IDictionary.

(Odziedziczone po DbConnectionStringBuilder)
IDictionary.IsFixedSize

Pobiera wartość wskazującą, czy obiekt IDictionary ma stały rozmiar.

(Odziedziczone po DbConnectionStringBuilder)
IDictionary.IsReadOnly

Pobiera wartość wskazującą, czy IDictionary jest tylko do odczytu.

(Odziedziczone po DbConnectionStringBuilder)
IDictionary.Item[Object]

Pobiera lub ustawia element przy użyciu określonego klucza.

(Odziedziczone po DbConnectionStringBuilder)
IDictionary.Remove(Object)

Usuwa element z określonym kluczem z obiektu IDictionary.

(Odziedziczone po DbConnectionStringBuilder)
IEnumerable.GetEnumerator()

Zwraca moduł wyliczający, który iteruje za pośrednictwem kolekcji.

(Odziedziczone po DbConnectionStringBuilder)

Metody rozszerzania

Cast<TResult>(IEnumerable)

Rzutuje elementy IEnumerable do określonego typu.

OfType<TResult>(IEnumerable)

Filtruje elementy IEnumerable na podstawie określonego typu.

AsParallel(IEnumerable)

Umożliwia równoległość zapytania.

AsQueryable(IEnumerable)

Konwertuje IEnumerable na IQueryable.

Dotyczy

Zobacz też