SqlConnectionStringBuilder Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Poskytuje jednoduchý způsob, jak vytvořit a spravovat obsah připojovacích řetězců používaných SqlConnection třídy.
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
- Dědičnost
- Atributy
Příklady
Následující konzolová aplikace sestaví připojovací řetězce pro databázi SQL Serveru. Kód používá třídu SqlConnectionStringBuilder k vytvoření připojovacího řetězce. Příklad pak analyzuje připojovací řetězec a ukazuje různé způsoby manipulace s jeho obsahem.
// 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
Poznámky
Tvůrce připojovacích řetězců umožňuje vývojářům programově vytvářet syntakticky správné připojovací řetězce a parsovat a znovu sestavit existující připojovací řetězce pomocí vlastností a metod třídy. Tvůrce připojovacích řetězců poskytuje vlastnosti silného typu odpovídající známým párům klíč/hodnota povolených SQL Serverem. Pokud potřebujete v rámci aplikace vytvořit připojovací řetězce, můžete k sestavení a úpravě připojovacích řetězců použít třídu SqlConnectionStringBuilder. Třída také usnadňuje správu připojovacích řetězců uložených v konfiguračním souboru aplikace.
SqlConnectionStringBuilder provádí kontroly platných párů klíč/hodnota. Proto nelze tuto třídu použít k vytvoření neplatných připojovacích řetězců; při pokusu o přidání neplatných dvojic dojde k výjimce. Třída udržuje pevnou kolekci synonym a může přeložit ze synonyma na odpovídající dobře známý název klíče.
Když například použijete vlastnost Item
k načtení hodnoty, můžete zadat řetězec, který obsahuje jakékoli synonymum pro klíč, který potřebujete. Můžete například zadat "Síťová adresa", "addr" nebo jakékoli jiné přijatelné synonymum pro tento klíč v rámci připojovacího řetězce, když použijete libovolný člen, který vyžaduje řetězec obsahující název klíče, například vlastnost Item[String] nebo metodu Remove. Úplný seznam přijatelných synonym najdete ve vlastnosti ConnectionString.
Vlastnost Item[String] zpracovává pokusy o vložení škodlivých položek. Například následující kód pomocí výchozí vlastnosti Item
(indexer v jazyce C#) správně unikne dvojici vnořených klíč/hodnota:
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);
Výsledkem je následující připojovací řetězec, který bezpečně zpracovává neplatnou hodnotu:
Source=(local);Initial Catalog="AdventureWorks;NewValue=Bad";
Integrated Security=True
Konstruktory
SqlConnectionStringBuilder() |
Inicializuje novou instanci SqlConnectionStringBuilder třídy. |
SqlConnectionStringBuilder(String) |
Inicializuje novou instanci SqlConnectionStringBuilder třídy. Zadaný připojovací řetězec poskytuje data pro interní informace o připojení instance. |
Vlastnosti
ApplicationIntent |
Deklaruje typ úlohy aplikace při připojování k databázi ve skupině dostupnosti SQL Serveru. Hodnotu této vlastnosti můžete nastavit pomocí ApplicationIntent. Další informace o podpoře SqlClient pro skupiny dostupnosti AlwaysOn naleznete v tématu Podpora SqlClient pro vysokou dostupnost, zotavení po havárii. |
ApplicationName |
Získá nebo nastaví název aplikace přidružené k připojovacímu řetězci. |
AsynchronousProcessing |
Získá nebo nastaví logickou hodnotu, která označuje, zda asynchronní zpracování je povoleno připojením vytvořené pomocí tohoto připojovacího řetězce. |
AttachDBFilename |
Získá nebo nastaví řetězec, který obsahuje název primárního datového souboru. To zahrnuje úplný název cesty připojitelné databáze. |
Authentication |
Získá ověřování připojovacího řetězce. |
BrowsableConnectionString |
Získá nebo nastaví hodnotu, která označuje, zda je vlastnost ConnectionString viditelná v návrhářích sady Visual Studio. (Zděděno od DbConnectionStringBuilder) |
ColumnEncryptionSetting |
Získá nebo nastaví nastavení šifrování sloupce pro tvůrce připojovacích řetězců. |
ConnectionReset |
Zastaralé.
Zastaralý. Získá nebo nastaví logickou hodnotu, která označuje, zda se připojení resetuje při vykreslení z fondu připojení. |
ConnectionString |
Získá nebo nastaví připojovací řetězec přidružený k DbConnectionStringBuilder. (Zděděno od DbConnectionStringBuilder) |
ConnectRetryCount |
Počet pokusů o opětovné připojení po zjištění, že došlo k selhání nečinného připojení. Musí to být celé číslo od 0 do 255. Výchozí hodnota je 1. Nastavte na hodnotu 0 a zakažte opětovné připojení při selhání nečinných připojení. Pokud je nastavená hodnota mimo povolený rozsah, vyvolá se ArgumentException. |
ConnectRetryInterval |
Doba (v sekundách) mezi jednotlivými pokusy o opětovné připojení po zjištění, že došlo k selhání nečinného připojení. Musí to být celé číslo od 1 do 60. Výchozí hodnota je 10 sekund. Pokud je nastavená hodnota mimo povolený rozsah, vyvolá se ArgumentException. |
ConnectTimeout |
Získá nebo nastaví dobu (v sekundách) počkat na připojení k serveru před ukončením pokusu a vygenerováním chyby. |
ContextConnection |
Získá nebo nastaví hodnotu, která označuje, zda se má provést připojení klienta nebo serveru nebo procesu k SQL Serveru. |
Count |
Získá aktuální počet klíčů, které jsou obsaženy v ConnectionString vlastnost. (Zděděno od DbConnectionStringBuilder) |
CurrentLanguage |
Získá nebo nastaví název záznamu jazyka SQL Serveru. |
DataSource |
Získá nebo nastaví název nebo síťovou adresu instance SQL Serveru pro připojení. |
EnclaveAttestationUrl |
Získá nebo nastaví enklávu attestation URL, který se má použít s enklávou založený Always Encrypted. |
Encrypt |
Získá nebo nastaví logickou hodnotu, která označuje, zda SQL Server používá šifrování SSL pro všechna data odesílaná mezi klientem a serverem, pokud má server nainstalovaný certifikát. |
Enlist |
Získá nebo nastaví logickou hodnotu, která označuje, zda SQL Server sdružování připojení automaticky zařazuje připojení do kontextu aktuální transakce vlákna vytvoření. |
FailoverPartner |
Získá nebo nastaví název nebo adresu partnerského serveru pro připojení, pokud je primární server dole. |
InitialCatalog |
Získá nebo nastaví název databáze přidružené k připojení. |
IntegratedSecurity |
Získá nebo nastaví logickou hodnotu, která označuje, zda jsou ID uživatele a heslo zadány v připojení (když |
IsFixedSize |
Získá hodnotu, která označuje, zda SqlConnectionStringBuilder má pevnou velikost. |
IsFixedSize |
Získá hodnotu, která označuje, zda DbConnectionStringBuilder má pevnou velikost. (Zděděno od DbConnectionStringBuilder) |
IsReadOnly |
Získá hodnotu, která označuje, zda DbConnectionStringBuilder je jen pro čtení. (Zděděno od DbConnectionStringBuilder) |
Item[String] |
Získá nebo nastaví hodnotu přidruženou k zadanému klíči. V jazyce C# je tato vlastnost indexerem. |
Keys |
Získá ICollection, který obsahuje klíče v SqlConnectionStringBuilder. |
LoadBalanceTimeout |
Získá nebo nastaví minimální dobu v sekundách, aby připojení žilo ve fondu připojení před zničením. |
MaxPoolSize |
Získá nebo nastaví maximální počet připojení povolených ve fondu připojení pro tento konkrétní připojovací řetězec. |
MinPoolSize |
Získá nebo nastaví minimální počet připojení povolených ve fondu připojení pro tento konkrétní připojovací řetězec. |
MultipleActiveResultSets |
Pokud je pravda, může aplikace udržovat více aktivních sad výsledků (MARS). Pokud je hodnota false, musí aplikace zpracovat nebo zrušit všechny sady výsledků z jedné dávky, aby bylo možné na daném připojení spustit jakoukoli jinou dávku. Další informace naleznete v tématu více aktivních sad výsledků (MARS). |
MultiSubnetFailover |
Pokud se vaše aplikace připojuje ke skupině dostupnosti AlwaysOn (AG) nebo instanci clusteru s podporou převzetí služeb při selhání alwaysOn (FCI) v různých podsítích, nastavení MultiSubnetFailover=true zajišťuje rychlejší detekci a připojení k (aktuálně) aktivnímu serveru. Další informace o podpoře SqlClient pro funkce AlwaysOn naleznete v tématu Podpora SqlClient pro vysokou dostupnost, zotavení po havárii. |
NetworkLibrary |
Získá nebo nastaví řetězec, který obsahuje název síťové knihovny použité k navázání připojení k SQL Serveru. |
PacketSize |
Získá nebo nastaví velikost v bajtech síťových paketů používaných ke komunikaci s instancí SQL Serveru. |
Password |
Získá nebo nastaví heslo pro účet SQL Serveru. |
PersistSecurityInfo |
Získá nebo nastaví hodnotu, která označuje, zda informace citlivé na zabezpečení, jako je heslo nebo přístupový token, by se měly vrátit jako součást připojovacího řetězce u připojení vytvořeného s tímto SqlConnectionStringBuilder poté, co bylo připojení v otevřeném stavu. |
PoolBlockingPeriod |
Chování blokujícího období pro fond připojení. |
Pooling |
Získá nebo nastaví logickou hodnotu, která označuje, zda bude připojení ve fondu nebo explicitně otevřeno při každém vyžádání připojení. |
Replication |
Získá nebo nastaví logickou hodnotu, která označuje, zda je replikace podporována pomocí připojení. |
TransactionBinding |
Získá nebo nastaví řetězcovou hodnotu, která označuje, jak připojení udržuje své přidružení k zařazení |
TransparentNetworkIPResolution |
Pokud je hodnota tohoto klíče nastavena na |
TrustServerCertificate |
Získá nebo nastaví hodnotu, která označuje, zda kanál bude zašifrován při obejití procházení řetězu certifikátů k ověření důvěryhodnosti. |
TypeSystemVersion |
Získá nebo nastaví řetězcovou hodnotu, která označuje typ systému, který aplikace očekává. |
UserID |
Získá nebo nastaví ID uživatele, které se má použít při připojování k SQL Serveru. |
UserInstance |
Získá nebo nastaví hodnotu, která určuje, zda se má přesměrovat připojení z výchozí instance SQL Server Express na instanci spuštěnou za běhu spuštěnou pod účtem volajícího. |
Values |
Získá ICollection, který obsahuje hodnoty v SqlConnectionStringBuilder. |
WorkstationID |
Získá nebo nastaví název pracovní stanice, která se připojuje k SQL Serveru. |
Metody
Add(String, Object) |
Přidá položku se zadaným klíčem a hodnotou do DbConnectionStringBuilder. (Zděděno od DbConnectionStringBuilder) |
Clear() |
Vymaže obsah instance SqlConnectionStringBuilder. |
ClearPropertyDescriptors() |
Vymaže kolekci PropertyDescriptor objektů v přidružené DbConnectionStringBuilder. (Zděděno od DbConnectionStringBuilder) |
ContainsKey(String) |
Určuje, zda SqlConnectionStringBuilder obsahuje konkrétní klíč. |
Equals(Object) |
Určuje, zda je zadaný objekt roven aktuálnímu objektu. (Zděděno od Object) |
EquivalentTo(DbConnectionStringBuilder) |
Porovná informace o připojení v tomto DbConnectionStringBuilder objektu s informacemi o připojení v zadaném objektu. (Zděděno od DbConnectionStringBuilder) |
GetHashCode() |
Slouží jako výchozí funkce hash. (Zděděno od Object) |
GetProperties(Hashtable) |
Vyplní zadaný Hashtable informacemi o všech vlastnostech tohoto DbConnectionStringBuilder. (Zděděno od DbConnectionStringBuilder) |
GetType() |
Získá Type aktuální instance. (Zděděno od Object) |
MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
Remove(String) |
Odebere položku se zadaným klíčem z instance SqlConnectionStringBuilder. |
ShouldSerialize(String) |
Určuje, zda zadaný klíč existuje v této instanci SqlConnectionStringBuilder. |
ToString() |
Vrátí připojovací řetězec přidružený k tomuto DbConnectionStringBuilder. (Zděděno od DbConnectionStringBuilder) |
TryGetValue(String, Object) |
Načte hodnotu odpovídající zadanému klíči z tohoto SqlConnectionStringBuilder. |
Explicitní implementace rozhraní
ICollection.CopyTo(Array, Int32) |
Zkopíruje prvky ICollection do Arraypočínaje konkrétním indexem Array. (Zděděno od DbConnectionStringBuilder) |
ICollection.IsSynchronized |
Získá hodnotu označující, zda je přístup k ICollection synchronizován (bezpečné vlákno). (Zděděno od DbConnectionStringBuilder) |
ICollection.SyncRoot |
Získá objekt, který lze použít k synchronizaci přístupu k ICollection. (Zděděno od DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetAttributes() |
Vrátí kolekci vlastních atributů pro tuto instanci komponenty. (Zděděno od DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetClassName() |
Vrátí název třídy této instance komponenty. (Zděděno od DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetComponentName() |
Vrátí název této instance komponenty. (Zděděno od DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetConverter() |
Vrátí převaděč typů pro tuto instanci komponenty. (Zděděno od DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetDefaultEvent() |
Vrátí výchozí událost pro tuto instanci komponenty. (Zděděno od DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetDefaultProperty() |
Vrátí výchozí vlastnost pro tuto instanci komponenty. (Zděděno od DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetEditor(Type) |
Vrátí editor zadaného typu pro tuto instanci komponenty. (Zděděno od DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetEvents() |
Vrátí události pro tuto instanci komponenty. (Zděděno od DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetEvents(Attribute[]) |
Vrátí události pro tuto instanci komponenty pomocí zadaného pole atributů jako filtru. (Zděděno od DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetProperties() |
Vrátí vlastnosti pro tuto instanci komponenty. (Zděděno od DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetProperties(Attribute[]) |
Vrátí vlastnosti pro tuto instanci komponenty pomocí pole atributů jako filtru. (Zděděno od DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetPropertyOwner(PropertyDescriptor) |
Vrátí objekt, který obsahuje vlastnost popsanou popisovačem zadané vlastnosti. (Zděděno od DbConnectionStringBuilder) |
IDictionary.Add(Object, Object) |
Přidá prvek se zadaným klíčem a hodnotou do objektu IDictionary. (Zděděno od DbConnectionStringBuilder) |
IDictionary.Contains(Object) |
Určuje, zda IDictionary objekt obsahuje prvek se zadaným klíčem. (Zděděno od DbConnectionStringBuilder) |
IDictionary.GetEnumerator() |
Vrátí objekt IDictionaryEnumerator pro objekt IDictionary. (Zděděno od DbConnectionStringBuilder) |
IDictionary.IsFixedSize |
Získá hodnotu určující, zda IDictionary objekt má pevnou velikost. (Zděděno od DbConnectionStringBuilder) |
IDictionary.IsReadOnly |
Získá hodnotu určující, zda IDictionary je jen pro čtení. (Zděděno od DbConnectionStringBuilder) |
IDictionary.Item[Object] |
Získá nebo nastaví prvek se zadaným klíčem. (Zděděno od DbConnectionStringBuilder) |
IDictionary.Remove(Object) |
Odebere prvek se zadaným klíčem z objektu IDictionary. (Zděděno od DbConnectionStringBuilder) |
IEnumerable.GetEnumerator() |
Vrátí enumerátor, který iteruje kolekcí. (Zděděno od DbConnectionStringBuilder) |
Metody rozšíření
Cast<TResult>(IEnumerable) |
Přetypuje prvky IEnumerable na zadaný typ. |
OfType<TResult>(IEnumerable) |
Filtruje prvky IEnumerable na základě zadaného typu. |
AsParallel(IEnumerable) |
Umožňuje paralelizaci dotazu. |
AsQueryable(IEnumerable) |
Převede IEnumerable na IQueryable. |
Platí pro
Viz také
- připojovacích řetězců
(ADO.NET) - přehled
ADO.NET