Dela via


Anslutningssträngar i ADO.NET

En niska veze innehåller initieringsinformation som skickas som en parameter från en dataprovider till en datakälla. Dataprovidern tar emot niska veze som värdet för DbConnection.ConnectionString egenskapen. Providern parsar niska veze och ser till att syntaxen är korrekt och att nyckelorden stöds. DbConnection.Open() Sedan skickar metoden de parsade anslutningsparametrarna till datakällan. Datakällan utför ytterligare verifiering och upprättar en anslutning.

Syntax för anslutningssträng

En niska veze är en semikolonavgränsad lista över nyckel-/värdepar:

keyword1=value; keyword2=value;

Nyckelord är inte skiftlägeskänsliga. Värden kan dock vara skiftlägeskänsliga, beroende på datakällan. Både nyckelord och värden kan innehålla blankstegstecken. Inledande och avslutande blanksteg ignoreras i nyckelord och ociterade värden.

Om ett värde innehåller semikolon, Unicode-kontrolltecken eller inledande eller avslutande blanksteg måste det omges av enkla eller dubbla citattecken. Till exempel:

Keyword=" whitespace  ";
Keyword='special;character';

Det omslutande tecknet kanske inte inträffar inom det värde som det omsluter. Därför kan ett värde som innehåller enkla citattecken endast omges av dubbla citattecken och vice versa:

Keyword='double"quotation;mark';
Keyword="single'quotation;mark";

Du kan också undvika det omslutande tecknet genom att använda två av dem tillsammans:

Keyword="double""quotation";
Keyword='single''quotation';

Citattecknen själva, liksom likhetstecknet, kräver inte utrymning, så följande niska veze är giltiga:

Keyword=no "escaping" 'required';
Keyword=a=b=c

Eftersom varje värde läss till nästa semikolon eller slutet av strängen är a=b=cvärdet i det senare exemplet , och det slutliga semikolonet är valfritt.

Alla niska veze har samma grundläggande syntax som beskrevs tidigare. Uppsättningen identifierade nyckelord beror dock på providern och har utvecklats under åren från tidigare API:er, till exempel ODBC. .NET Framework-dataprovidern för SQL Server (SqlClient) stöder många nyckelord från äldre API:er, men är vanligtvis mer flexibel och accepterar synonymer för många av de vanliga niska veze nyckelord.

Att skriva fel kan orsaka fel. Är till exempel Integrated Security=true giltigt, men IntegratedSecurity=true orsakar ett fel.

Anslutningssträngar som konstrueras manuellt vid körning från ovaliderade användarindata är sårbara för stränginmatningsattacker och äventyrar säkerheten i datakällan. För att lösa dessa problem introducerade ADO.NET 2.0 niska veze-byggare för varje .NET Framework-dataprovider. Dessa niska veze byggare exponerar parametrar som starkt skrivna egenskaper och gör det möjligt att verifiera niska veze innan den skickas till datakällan.

Viktigt!

Microsoft rekommenderar att du använder det säkraste tillgängliga autentiseringsflödet. Om du ansluter till Azure SQL är hanterade identiteter för Azure-resurser den rekommenderade autentiseringsmetoden.

I detta avsnitt

Byggare av anslutningssträngar
Visar hur du använder klasserna ConnectionStringBuilder för att skapa giltiga niska veze vid körning.

Anslutningssträngar och konfigurationsfiler
Visar hur du lagrar och hämtar niska veze i konfigurationsfiler.

Syntax för anslutningssträng
Beskriver hur du konfigurerar providerspecifika niska veze för SqlClient, OracleClient, OleDboch Odbc.

Skydda anslutningsinformation
Demonstrerar tekniker för att skydda information som används för att ansluta till en datakälla.

Se även