SqlConnectionStringBuilder Klass

Definition

Ger ett enkelt sätt att skapa och hantera innehållet i anslutningssträngar som används av SqlConnection klassen.

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

Exempel

Följande konsolprogram skapar anslutningssträngar för en SQL Server databas. Koden använder klassen SqlConnectionStringBuilder för att skapa reťazec pripojenia. Exemplet parsar sedan reťazec pripojenia och visar olika sätt att manipulera innehållet.

// 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

Kommentarer

Med reťazec pripojenia builder kan utvecklare programmatiskt skapa syntaktiskt korrekta anslutningssträngar och parsa och återskapa befintliga anslutningssträngar med hjälp av egenskaper och metoder för klassen. Connection string-byggaren innehåller starkt skrivna egenskaper som motsvarar de kända nyckel/värde-par som tillåts av SQL Server. Om du behöver skapa anslutningssträngar som en del av din app kan du använda SqlConnectionStringBuilder klassen för att skapa och ändra anslutningssträngar. Klassen gör det också enkelt att hantera anslutningssträngar som lagras i en programkonfigurationsfil.

SqlConnectionStringBuilder utför kontroller för giltiga nyckel/värde-par. Därför kan du inte använda den här klassen för att skapa ogiltiga anslutningssträngar. om du försöker lägga till ogiltiga par utlöser ett undantag. Klassen har en fast samling synonymer och kan översättas från en synonym till motsvarande välkända nyckelnamn.

När du till exempel använder Item egenskapen för att hämta ett värde kan du ange en sträng som innehåller valfri synonym för den nyckel du behöver. Du kan till exempel ange "Nätverksadress", "addr" eller någon annan godtagbar synonym för den här nyckeln inom en reťazec pripojenia när du använder en medlem som kräver en sträng som innehåller nyckelnamnet, till exempel egenskapen Item[String] eller metoden Remove. Se egenskapen ConnectionString för en fullständig lista över godtagbara synonymer.

Egenskapen Item[String] hanterar försök att infoga skadliga poster. Följande kod, som använder standardegenskapen Item (indexeraren i C#) undflyer till exempel korrekt det kapslade nyckel-/värdeparet:

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);

Resultatet är följande reťazec pripojenia som hanterar det ogiltiga värdet på ett säkert sätt:

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

Konstruktorer

Name Description
SqlConnectionStringBuilder()

Initierar en ny instans av SqlConnectionStringBuilder klassen.

SqlConnectionStringBuilder(String)

Initierar en ny instans av SqlConnectionStringBuilder klassen. Den angivna reťazec pripojenia innehåller data för instansens interna anslutningsinformation.

Egenskaper

Name Description
ApplicationIntent

Deklarerar programarbetsbelastningstypen när du ansluter till en databas i en SQL Server tillgänglighetsgrupp. Du kan ange värdet för den här egenskapen med ApplicationIntent. Mer information om SqlClient-stöd för AlwaysOn-tillgänglighetsgrupper finns i SqlClient-stöd för hög tillgänglighet, haveriberedskap.

ApplicationName

Hämtar eller anger namnet på programmet som är associerat med reťazec pripojenia.

AsynchronousProcessing

Hämtar eller anger ett booleskt värde som anger om asynkron bearbetning tillåts av anslutningen som skapas med hjälp av den här reťazec pripojenia.

AttachDBFilename

Hämtar eller anger en sträng som innehåller namnet på den primära datafilen. Detta inkluderar det fullständiga sökvägsnamnet för en bifogad databas.

Authentication

Hämtar autentisering av reťazec pripojenia.

BrowsableConnectionString

Hämtar eller anger ett värde som anger om egenskapen ConnectionString visas i Visual Studio designers.

(Ärvd från DbConnectionStringBuilder)
ColumnEncryptionSetting

Hämtar eller anger kolumnkrypteringsinställningarna för reťazec pripojenia builder.

ConnectionReset
Föråldrad.

Obsolete. Hämtar eller anger ett booleskt värde som anger om anslutningen återställs när den hämtas från anslutningspoolen.

ConnectionString

Hämtar eller anger reťazec pripojenia som är associerade med DbConnectionStringBuilder.

(Ärvd från DbConnectionStringBuilder)
ConnectRetryCount

Antalet återanslutningsförsök efter att ha identifierat att det uppstod ett inaktivt anslutningsfel. Detta måste vara ett heltal mellan 0 och 255. Standard är 1. Ange till 0 för att inaktivera återanslutning vid inaktiva anslutningsfel. Ett ArgumentException genereras om det anges till ett värde utanför det tillåtna intervallet.

ConnectRetryInterval

Tid (i sekunder) mellan varje återanslutningsförsök efter att ha identifierat att det uppstod ett inaktivt anslutningsfel. Detta måste vara ett heltal mellan 1 och 60. Standardvärdet är 10 sekunder. Ett ArgumentException genereras om det anges till ett värde utanför det tillåtna intervallet.

ConnectTimeout

Hämtar eller anger hur lång tid (i sekunder) som ska vänta på en anslutning till servern innan försöket avslutas och ett fel genereras.

ContextConnection

Hämtar eller anger ett värde som anger om en klient/server eller en pågående anslutning till SQL Server ska göras.

Count

Hämtar det aktuella antalet nycklar som finns i egenskapen ConnectionString .

(Ärvd från DbConnectionStringBuilder)
CurrentLanguage

Hämtar eller anger postnamnet SQL Server Language.

DataSource

Hämtar eller anger namnet eller nätverksadressen för instansen av SQL Server att ansluta till.

EnclaveAttestationUrl

Hämtar eller anger enklavattesterings-URL:en som ska användas med enklavbaserad Always Encrypted.

Encrypt

Hämtar eller anger ett booleskt värde som anger om SQL Server använder SSL-kryptering för alla data som skickas mellan klienten och servern om servern har ett certifikat installerat.

Enlist

Hämtar eller anger ett booleskt värde som anger om SQL Server anslutningspool automatiskt registrerar anslutningen i skapandetrådens aktuella transaktionskontext.

FailoverPartner

Hämtar eller anger namnet eller adressen för partnerservern som ska anslutas till om den primära servern är nere.

InitialCatalog

Hämtar eller anger namnet på databasen som är associerad med anslutningen.

IntegratedSecurity

Hämtar eller anger ett booleskt värde som anger om användar-ID och lösenord anges i anslutningen (när false) eller om de aktuella Windows kontoautentiseringsuppgifterna används för autentisering (när true).

IsFixedSize

Hämtar ett värde som anger om har SqlConnectionStringBuilder en fast storlek.

IsReadOnly

Hämtar ett värde som anger om är DbConnectionStringBuilder skrivskyddat.

(Ärvd från DbConnectionStringBuilder)
Item[String]

Hämtar eller anger värdet som är associerat med den angivna nyckeln. I C# är den här egenskapen indexeraren.

Keys

Hämtar en ICollection som innehåller nycklarna i SqlConnectionStringBuilder.

LoadBalanceTimeout

Hämtar eller anger den minsta tiden, i sekunder, för anslutningen att leva i anslutningspoolen innan den förstörs.

MaxPoolSize

Hämtar eller anger det maximala antalet anslutningar som tillåts i anslutningspoolen för den här specifika reťazec pripojenia.

MinPoolSize

Hämtar eller anger det minsta antalet anslutningar som tillåts i anslutningspoolen för den här specifika reťazec pripojenia.

MultipleActiveResultSets

När det är sant kan ett program underhålla flera aktiva resultatuppsättningar (MARS). När det är falskt måste ett program bearbeta eller avbryta alla resultatuppsättningar från en batch innan det kan köra någon annan batch på den anslutningen.

Mer information finns i Flera aktiva resultatuppsättningar (MARS).

MultiSubnetFailover

Om programmet ansluter till en AlwaysOn-tillgänglighetsgrupp (AG) eller Always On Failover Cluster Instance (FCI) i olika undernät, ger inställningen MultiSubnetFailover=true snabbare identifiering av och anslutning till den (för närvarande) aktiva servern. Mer information om SqlClient-stöd för AlwaysOn-funktionerna finns i SqlClient-stöd för hög tillgänglighet, haveriberedskap.

NetworkLibrary

Hämtar eller anger en sträng som innehåller namnet på det nätverksbibliotek som används för att upprätta en anslutning till SQL Server.

PacketSize

Hämtar eller anger storleken i byte för de nätverkspaket som används för att kommunicera med en instans av SQL Server.

Password

Hämtar eller anger lösenordet för SQL Server-kontot.

PersistSecurityInfo

Hämtar eller anger ett värde som anger om säkerhetskänslig information, till exempel lösenord eller åtkomsttoken, ska returneras som en del av reťazec pripojenia på en anslutning som skapats med den här SqlConnectionStringBuilder efter att anslutningen någonsin har varit i öppet tillstånd.

PoolBlockingPeriod

Beteendet för blockeringsperiod för en anslutningspool.

Pooling

Hämtar eller anger ett booleskt värde som anger om anslutningen ska poolas eller öppnas explicit varje gång anslutningen begärs.

Replication

Hämtar eller anger ett booleskt värde som anger om replikering stöds med hjälp av anslutningen.

TransactionBinding

Hämtar eller anger ett strängvärde som anger hur anslutningen underhåller sin association med en registrerad System.Transactions transaktion.

TransparentNetworkIPResolution

När värdet för den här nyckeln är inställt på truemåste programmet hämta alla IP-adresser för en viss DNS-post och försöka ansluta med den första i listan. Om anslutningen inte upprättas inom 0,5 sekunder försöker programmet ansluta till alla andra parallellt. När de första svaren besvaras upprättar programmet anslutningen till svarandens IP-adress.

TrustServerCertificate

Hämtar eller anger ett värde som anger om kanalen ska krypteras vid förbikoppling av certifikatkedjan för att verifiera förtroende.

TypeSystemVersion

Hämtar eller anger ett strängvärde som anger vilket typsystem programmet förväntar sig.

UserID

Hämtar eller anger det användar-ID som ska användas vid anslutning till SQL Server.

UserInstance

Hämtar eller anger ett värde som anger om anslutningen ska omdirigeras från standardinstansen SQL Server Express till en körningsinitierad instans som körs under anroparens konto.

Values

Hämtar en ICollection som innehåller värdena i SqlConnectionStringBuilder.

WorkstationID

Hämtar eller anger namnet på arbetsstationen som ansluter till SQL Server.

Metoder

Name Description
Add(String, Object)

Lägger till en post med den angivna nyckeln och värdet i DbConnectionStringBuilder.

(Ärvd från DbConnectionStringBuilder)
Clear()

Rensar innehållet i instansen SqlConnectionStringBuilder .

ClearPropertyDescriptors()

Rensar samlingen med PropertyDescriptor objekt på den associerade DbConnectionStringBuilder.

(Ärvd från DbConnectionStringBuilder)
ContainsKey(String)

Avgör om innehåller SqlConnectionStringBuilder en specifik nyckel.

Equals(Object)

Avgör om det angivna objektet är lika med det aktuella objektet.

(Ärvd från Object)
EquivalentTo(DbConnectionStringBuilder)

Jämför anslutningsinformationen i det här DbConnectionStringBuilder objektet med anslutningsinformationen i det angivna objektet.

(Ärvd från DbConnectionStringBuilder)
GetHashCode()

Fungerar som standard-hash-funktion.

(Ärvd från Object)
GetProperties(Hashtable)

Fyller i en angiven Hashtable med information om alla egenskaper för den här DbConnectionStringBuilder.

(Ärvd från DbConnectionStringBuilder)
GetType()

Hämtar den aktuella instansen Type .

(Ärvd från Object)
MemberwiseClone()

Skapar en ytlig kopia av den aktuella Object.

(Ärvd från Object)
Remove(String)

Tar bort posten med den angivna nyckeln från instansen SqlConnectionStringBuilder .

ShouldSerialize(String)

Anger om den angivna nyckeln finns i den här SqlConnectionStringBuilder instansen.

ToString()

Returnerar den reťazec pripojenia som är associerad med den här DbConnectionStringBuilder.

(Ärvd från DbConnectionStringBuilder)
TryGetValue(String, Object)

Hämtar ett värde som motsvarar den angivna nyckeln från den här SqlConnectionStringBuilder.

Explicita gränssnittsimplementeringar

Name Description
ICollection.CopyTo(Array, Int32)

Kopierar elementen i ICollection till en Array, med början vid ett visst Array index.

(Ärvd från DbConnectionStringBuilder)
ICollection.IsSynchronized

Hämtar ett värde som anger om åtkomsten ICollection till är synkroniserad (trådsäker).

(Ärvd från DbConnectionStringBuilder)
ICollection.SyncRoot

Hämtar ett objekt som kan användas för att synkronisera åtkomsten ICollectiontill .

(Ärvd från DbConnectionStringBuilder)
ICustomTypeDescriptor.GetAttributes()

Returnerar en samling anpassade attribut för den här instansen av en komponent.

(Ärvd från DbConnectionStringBuilder)
ICustomTypeDescriptor.GetClassName()

Returnerar klassnamnet för den här instansen av en komponent.

(Ärvd från DbConnectionStringBuilder)
ICustomTypeDescriptor.GetComponentName()

Returnerar namnet på den här instansen av en komponent.

(Ärvd från DbConnectionStringBuilder)
ICustomTypeDescriptor.GetConverter()

Returnerar en typkonverterare för den här instansen av en komponent.

(Ärvd från DbConnectionStringBuilder)
ICustomTypeDescriptor.GetDefaultEvent()

Returnerar standardhändelsen för den här instansen av en komponent.

(Ärvd från DbConnectionStringBuilder)
ICustomTypeDescriptor.GetDefaultProperty()

Returnerar standardegenskapen för den här instansen av en komponent.

(Ärvd från DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEditor(Type)

Returnerar en redigerare av den angivna typen för den här instansen av en komponent.

(Ärvd från DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEvents()

Returnerar händelserna för den här instansen av en komponent.

(Ärvd från DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEvents(Attribute[])

Returnerar händelserna för den här instansen av en komponent med den angivna attributmatrisen som ett filter.

(Ärvd från DbConnectionStringBuilder)
ICustomTypeDescriptor.GetProperties()

Returnerar egenskaperna för den här instansen av en komponent.

(Ärvd från DbConnectionStringBuilder)
ICustomTypeDescriptor.GetProperties(Attribute[])

Returnerar egenskaperna för den här instansen av en komponent med hjälp av attributmatrisen som ett filter.

(Ärvd från DbConnectionStringBuilder)
ICustomTypeDescriptor.GetPropertyOwner(PropertyDescriptor)

Returnerar ett objekt som innehåller egenskapen som beskrivs av den angivna egenskapsbeskrivningen.

(Ärvd från DbConnectionStringBuilder)
IDictionary.Add(Object, Object)

Lägger till ett element med den angivna nyckeln och värdet i IDictionary objektet.

(Ärvd från DbConnectionStringBuilder)
IDictionary.Contains(Object)

Avgör om objektet IDictionary innehåller ett element med den angivna nyckeln.

(Ärvd från DbConnectionStringBuilder)
IDictionary.GetEnumerator()

Returnerar ett IDictionaryEnumerator objekt för objektet IDictionary .

(Ärvd från DbConnectionStringBuilder)
IDictionary.Item[Object]

Hämtar eller anger elementet med den angivna nyckeln.

(Ärvd från DbConnectionStringBuilder)
IDictionary.Remove(Object)

Tar bort elementet med den angivna nyckeln från IDictionary objektet.

(Ärvd från DbConnectionStringBuilder)
IEnumerable.GetEnumerator()

Returnerar en uppräknare som itererar genom en samling.

(Ärvd från DbConnectionStringBuilder)

Tilläggsmetoder

Name Description
AsParallel(IEnumerable)

Möjliggör parallellisering av en fråga.

AsQueryable(IEnumerable)

Konverterar en IEnumerable till en IQueryable.

Cast<TResult>(IEnumerable)

Omvandlar elementen i en IEnumerable till den angivna typen.

OfType<TResult>(IEnumerable)

Filtrerar elementen i en IEnumerable baserat på en angiven typ.

Gäller för

Se även