SqlConnectionStringBuilder Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
sınıfı tarafından SqlConnection kullanılan bağlantı dizelerinin içeriğini oluşturmak ve yönetmek için basit bir yol sağlar.
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
- Devralma
- Öznitelikler
Örnekler
Aşağıdaki konsol uygulaması bir SQL Server veritabanı için bağlantı dizeleri oluşturur. Kod, bağlantı dizesi oluşturmak için bir SqlConnectionStringBuilder sınıf kullanır ve ardından örneğin özelliğini SqlConnectionStringBuilder bağlantı sınıfının oluşturucusununa geçirirConnectionString. Örnek ayrıca mevcut bir bağlantı dizesi ayrıştırarak bağlantı dizesi içeriğini düzenlemenin çeşitli yollarını gösterir.
Not
Bu örnek, bağlantı dizeleriyle nasıl SqlConnectionStringBuilder çalıştığını gösteren bir parola içerir. Uygulamalarınızda Windows Kimlik Doğrulaması kullanmanızı öneririz. Bir parola kullanmanız gerekiyorsa, uygulamanıza sabit kodlanmış bir parola eklemeyin.
using System.Data;
using System.Data.SqlClient;
class Program
{
static void Main()
{
// Create a new SqlConnectionStringBuilder and
// initialize it with a few name/value pairs.
SqlConnectionStringBuilder builder =
new SqlConnectionStringBuilder(GetConnectionString());
// The input connection string used the
// Server key, but the new connection string uses
// the well-known Data Source key instead.
Console.WriteLine(builder.ConnectionString);
// Pass the SqlConnectionStringBuilder an existing
// connection string, and you can retrieve and
// modify any of the elements.
builder.ConnectionString = "server=(local);user id=ab;" +
"password= a!Pass113;initial catalog=AdventureWorks";
// Now that the connection string has been parsed,
// you can work with individual items.
Console.WriteLine(builder.Password);
builder.Password = "new@1Password";
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(builder.ConnectionString);
Console.WriteLine("Press Enter to finish.");
Console.ReadLine();
}
private static string GetConnectionString()
{
// To avoid storing the connection string in your code,
// you can retrieve it from a configuration file.
return "Server=(local);Integrated Security=SSPI;" +
"Initial Catalog=AdventureWorks";
}
}
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(GetConnectionString())
' The input connection string used the
' Server key, but the new connection string uses
' the well-known Data Source key instead.
Console.WriteLine(builder.ConnectionString)
' Pass the SqlConnectionStringBuilder an existing
' connection string, and you can retrieve and
' modify any of the elements.
builder.ConnectionString = _
"server=(local);user id=ab;" & _
"password=a!Pass113;initial catalog=AdventureWorks"
' Now that the connection string has been parsed,
' you can work with individual items.
Console.WriteLine(builder.Password)
builder.Password = "new@1Password"
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(builder.ConnectionString)
Console.WriteLine("Press Enter to finish.")
Console.ReadLine()
End Sub
Private Function GetConnectionString() As String
' To avoid storing the connection string in your code,
' you can retrieve it from a configuration file.
Return "Server=(local);Integrated Security=SSPI;" & _
"Initial Catalog=AdventureWorks"
End Function
End Module
Açıklamalar
bağlantı dizesi oluşturucusu, geliştiricilerin programlama yoluyla el değmemiş şekilde doğru bağlantı dizeleri oluşturmasına ve sınıfın özelliklerini ve yöntemlerini kullanarak mevcut bağlantı dizelerini ayrıştırıp yeniden oluşturmasına olanak tanır. bağlantı dizesi oluşturucusu, SQL Server tarafından izin verilen bilinen anahtar/değer çiftlerine karşılık gelen kesin olarak belirlenmiş özellikler sağlar. Uygulamaların bir parçası olarak bağlantı dizeleri oluşturması gereken geliştiriciler, bağlantı dizelerini oluşturmak ve değiştirmek için sınıfını kullanabilir SqlConnectionStringBuilder . sınıfı, bir uygulama yapılandırma dosyasında depolanan bağlantı dizelerini yönetmeyi de kolaylaştırır.
geçerli SqlConnectionStringBuilder anahtar/değer çiftleri için denetimler gerçekleştirir. Bu nedenle, geçersiz bağlantı dizeleri oluşturmak için bu sınıfı kullanamazsınız; Geçersiz çiftler eklemeye çalışılırsa özel durum oluşturulur. sınıfı sabit bir eş anlamlılar koleksiyonu tutar ve bir eş anlamlıdan ilgili iyi bilinen anahtar adına çevirebilir.
Örneğin, bir değeri almak için Item özelliğini kullandığınızda, ihtiyacınız olan anahtar için herhangi bir eş anlamlı içeren bir dize belirtebilirsiniz. Örneğin, Item özelliği veya yöntemi gibi anahtar adını içeren bir dize gerektiren herhangi bir üye kullandığınızda, bir bağlantı dizesi içinde bu anahtar için "Ağ Adresi", "ekleyici" veya Remove kabul edilebilir başka bir eş anlamlı belirtebilirsiniz. ConnectionString Kabul edilebilir eş anlamlıların tam listesi için özelliğine bakın.
Item özellik tanıtıcıları kötü amaçlı girişler eklemeye çalışır. Örneğin, aşağıdaki kodda varsayılan Item özelliği (C# dilinde dizin oluşturucu) kullanıldığında iç içe anahtar/değer çifti doğru şekilde kaçılır:
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);
Sonuç, geçersiz değeri güvenli bir şekilde işleyen aşağıdaki bağlantı dizesi olur:
Source=(local);Initial Catalog="AdventureWorks;NewValue=Bad";
Integrated Security=True
Oluşturucular
SqlConnectionStringBuilder() |
SqlConnectionStringBuilder sınıfının yeni bir örneğini başlatır. |
SqlConnectionStringBuilder(String) |
SqlConnectionStringBuilder sınıfının yeni bir örneğini başlatır. Sağlanan bağlantı dizesi, örneğin iç bağlantı bilgileri için verileri sağlar. |
Özellikler
ApplicationIntent |
SQL Server Kullanılabilirlik Grubundaki bir veritabanına bağlanırken uygulama iş yükü türünü bildirir. bu özelliğin değerini ile ApplicationIntentayarlayabilirsiniz. Always On Kullanılabilirlik Grupları için SqlClient desteği hakkında daha fazla bilgi için bkz. Yüksek Kullanılabilirlik, Olağanüstü Durum Kurtarma için SqlClient Desteği. |
ApplicationName |
bağlantı dizesi ile ilişkili uygulamanın adını alır veya ayarlar. |
AsynchronousProcessing |
Bu bağlantı dizesi kullanılarak oluşturulan bağlantı tarafından zaman uyumsuz işlemeye izin verilip verilmeyeceğini belirten bir Boole değeri alır veya ayarlar. |
AttachDBFilename |
Birincil veri dosyasının adını içeren bir dize alır veya ayarlar. Bu, eklenebilir veritabanının tam yol adını içerir. |
Authentication |
bağlantı dizesi kimlik doğrulamasını alır. |
BrowsableConnectionString |
Özelliğin Visual Studio tasarımcılarında görünür olup olmadığını ConnectionString gösteren bir değer alır veya ayarlar. (Devralındığı yer: DbConnectionStringBuilder) |
ColumnEncryptionSetting |
bağlantı dizesi oluşturucusu için sütun şifreleme ayarlarını alır veya ayarlar. |
ConnectionReset |
Geçersiz.
Kullanımdan kalktı. Bağlantı havuzundan çekildiğinde bağlantının sıfırlanıp sıfırlandığını belirten bir Boole değeri alır veya ayarlar. |
ConnectionString |
ile DbConnectionStringBuilderilişkili bağlantı dizesi alır veya ayarlar. (Devralındığı yer: DbConnectionStringBuilder) |
ConnectRetryCount |
Boşta bağlantı hatası olduğunu belirledikten sonra denenen yeniden bağlantı sayısı. Bu, 0 ile 255 arasında bir tamsayı olmalıdır. Varsayılan değer 1'dir. Boşta bağlantı hatalarında yeniden bağlanmayı devre dışı bırakmak için 0 olarak ayarlayın. ArgumentException, izin verilen aralığın dışında bir değere ayarlanırsa oluşturulur. |
ConnectRetryInterval |
Boşta bağlantı hatası olduğunu belirledikten sonra her yeniden bağlanma girişimi arasındaki süre (saniye olarak). Bu, 1 ile 60 arasında bir tamsayı olmalıdır. Varsayılan değer 10 saniyedir. ArgumentException, izin verilen aralığın dışında bir değere ayarlanırsa oluşturulur. |
ConnectTimeout |
Denemeyi sonlandırmadan ve bir hata oluşturmadan önce sunucu bağlantısı için bekleme süresini (saniye cinsinden) alır veya ayarlar. |
ContextConnection |
SQL Server için bir istemci/sunucu veya işlem içi bağlantı yapılması gerekip gerekmediğini belirten bir değer alır veya ayarlar. |
Count |
özelliği içinde ConnectionString yer alan geçerli anahtar sayısını alır. (Devralındığı yer: DbConnectionStringBuilder) |
CurrentLanguage |
SQL Server Dili kayıt adını alır veya ayarlar. |
DataSource |
Bağlanacak SQL Server örneğinin adını veya ağ adresini alır veya ayarlar. |
EnclaveAttestationUrl |
Kapanım tabanlı Always Encrypted ile kullanılacak kapanım kanıtlama Url'sini alır veya ayarlar. |
Encrypt |
sunucuda yüklü bir sertifika varsa SQL Server istemci ile sunucu arasında gönderilen tüm veriler için SSL şifrelemesi kullanıp kullanmadığını belirten bir Boole değeri alır veya ayarlar. |
Enlist |
SQL Server bağlantı havuzu oluşturucunun bağlantıyı oluşturma iş parçacığının geçerli işlem bağlamında otomatik olarak listeleyip listelemediğini belirten bir Boole değeri alır veya ayarlar. |
FailoverPartner |
Birincil sunucu kapalıysa bağlanacak iş ortağı sunucusunun adını veya adresini alır veya ayarlar. |
InitialCatalog |
Bağlantıyla ilişkili veritabanının adını alır veya ayarlar. |
IntegratedSecurity |
Bağlantıda Kullanıcı Kimliği ve Parola'nın belirtilip belirtilmediğinde (ne zaman) veya geçerli Windows hesabı kimlik bilgilerinin kimlik doğrulaması için kullanılıp kullanılmadığını (ne zaman |
IsFixedSize |
değerinin sabit bir boyuta sahip olup olmadığını SqlConnectionStringBuilder belirten bir değer alır. |
IsFixedSize |
değerinin sabit bir boyuta sahip olup olmadığını DbConnectionStringBuilder belirten bir değer alır. (Devralındığı yer: DbConnectionStringBuilder) |
IsReadOnly |
öğesinin salt okunur olup olmadığını DbConnectionStringBuilder belirten bir değer alır. (Devralındığı yer: DbConnectionStringBuilder) |
Item[String] |
Belirtilen anahtarla ilişkili değeri alır veya ayarlar. C# dilinde bu özellik dizin oluşturucudur. |
Keys |
içindeki SqlConnectionStringBuilderanahtarları içeren bir ICollection alır. |
LoadBalanceTimeout |
Bağlantının yok edilmeden önce bağlantı havuzunda yaşaması için en düşük süreyi saniye cinsinden alır veya ayarlar. |
MaxPoolSize |
Bu belirli bağlantı dizesi için bağlantı havuzunda izin verilen en fazla bağlantı sayısını alır veya ayarlar. |
MinPoolSize |
Bu belirli bağlantı dizesi için bağlantı havuzunda izin verilen en az bağlantı sayısını alır veya ayarlar. |
MultipleActiveResultSets |
True olduğunda, bir uygulama birden çok etkin sonuç kümesi (MARS) bulundurabilir. False olduğunda, uygulamanın bu bağlantıda başka bir toplu işlemi yürütebilmesi için önce bir toplu işlemdeki tüm sonuç kümelerini işlemesi veya iptal etmesi gerekir. Daha fazla bilgi için bkz . Birden Çok Etkin Sonuç Kümesi (MARS). |
MultiSubnetFailover |
Uygulamanız farklı alt ağlardaki Always On kullanılabilirlik grubuna (AG) veya Always On Yük Devretme Kümesi Örneğine (FCI) bağlanıyorsa MultiSubnetFailover=true ayarı etkin sunucuya (şu anda) daha hızlı algılama ve bağlantı sağlar. Always On özellikleri için SqlClient desteği hakkında daha fazla bilgi için bkz. Yüksek Kullanılabilirlik, Olağanüstü Durum Kurtarma için SqlClient Desteği. |
NetworkLibrary |
SQL Server bağlantı kurmak için kullanılan ağ kitaplığının adını içeren bir dizeyi alır veya ayarlar. |
PacketSize |
bir SQL Server örneğiyle iletişim kurmak için kullanılan ağ paketlerinin bayt cinsinden boyutunu alır veya ayarlar. |
Password |
SQL Server hesabının parolasını alır veya ayarlar. |
PersistSecurityInfo |
Parola veya erişim belirteci gibi güvenlik açısından hassas bilgilerin, bu bağlantı açık durumda olduktan sonra bu SqlConnectionStringBuilder bağlantıyla oluşturulan bir bağlantıdaki bağlantı dizesi parçası olarak döndürülmesi gerekip gerekmediğini belirten bir değer alır veya ayarlar. |
PoolBlockingPeriod |
Bağlantı havuzu için engelleme süresi davranışı. |
Pooling |
Bağlantı istendiği her durumda bağlantının havuza alınıp alınmayacağını veya açıkça açılacağını belirten bir Boole değeri alır veya ayarlar. |
Replication |
Bağlantı kullanılarak çoğaltmanın desteklenip desteklenmediğini belirten bir Boole değeri alır veya ayarlar. |
TransactionBinding |
Bağlantının, listelenmiş |
TransparentNetworkIPResolution |
Bu anahtarın değeri olarak ayarlandığında |
TrustServerCertificate |
Güveni doğrulamak için sertifika zincirinde yürümeyi atlarken kanalın şifrelenip şifrelenmeyeceğini belirten bir değer alır veya ayarlar. |
TypeSystemVersion |
Uygulamanın beklediği tür sistemini gösteren bir dize değeri alır veya ayarlar. |
UserID |
SQL Server bağlanırken kullanılacak kullanıcı kimliğini alır veya ayarlar. |
UserInstance |
Bağlantının varsayılan SQL Server Express örneğinden çağıranın hesabı altında çalışan çalışma zamanı tarafından başlatılan örneğe yönlendirilip yönlendirilmeyeceğini belirten bir değer alır veya ayarlar. |
Values |
içindeki SqlConnectionStringBuilderdeğerleri içeren bir ICollection alır. |
WorkstationID |
SQL Server bağlanan iş istasyonunun adını alır veya ayarlar. |
Yöntemler
Add(String, Object) |
öğesine belirtilen anahtar ve değere DbConnectionStringBuildersahip bir girdi ekler. (Devralındığı yer: DbConnectionStringBuilder) |
Clear() |
Örneğin içeriğini SqlConnectionStringBuilder temizler. |
ClearPropertyDescriptors() |
İlişkili DbConnectionStringBuildernesne koleksiyonunu PropertyDescriptor temizler. (Devralındığı yer: DbConnectionStringBuilder) |
ContainsKey(String) |
öğesinin SqlConnectionStringBuilder belirli bir anahtar içerip içermediğini belirler. |
Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
EquivalentTo(DbConnectionStringBuilder) |
Bu DbConnectionStringBuilder nesnedeki bağlantı bilgilerini sağlanan nesnedeki bağlantı bilgileriyle karşılaştırır. (Devralındığı yer: DbConnectionStringBuilder) |
GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
GetProperties(Hashtable) |
Sağlanan Hashtable bir öğesini bu DbConnectionStringBuilderöğesinin tüm özellikleri hakkında bilgilerle doldurur. (Devralındığı yer: DbConnectionStringBuilder) |
GetType() |
Type Geçerli örneğini alır. (Devralındığı yer: Object) |
MemberwiseClone() |
Geçerli Objectöğesinin sığ bir kopyasını oluşturur. (Devralındığı yer: Object) |
Remove(String) |
Belirtilen anahtara sahip girdiyi örnekten SqlConnectionStringBuilder kaldırır. |
ShouldSerialize(String) |
Belirtilen anahtarın bu SqlConnectionStringBuilder örnekte var olup olmadığını gösterir. |
ToString() |
Bu DbConnectionStringBuilderile ilişkili bağlantı dizesi döndürür. (Devralındığı yer: DbConnectionStringBuilder) |
TryGetValue(String, Object) |
Bu SqlConnectionStringBuilderanahtarından sağlanan anahtara karşılık gelen bir değeri alır. |
Belirtik Arabirim Kullanımları
ICollection.CopyTo(Array, Int32) |
öğesinin öğelerini ICollection belirli Array bir Arraydizinden başlayarak öğesine kopyalar. (Devralındığı yer: DbConnectionStringBuilder) |
ICollection.IsSynchronized |
erişimin ICollection eşitlenip eşitlenmediğini belirten bir değer alır (iş parçacığı güvenli). (Devralındığı yer: DbConnectionStringBuilder) |
ICollection.SyncRoot |
erişimi ICollectioneşitlemek için kullanılabilecek bir nesnesi alır. (Devralındığı yer: DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetAttributes() |
Bir bileşenin bu örneği için özel özniteliklerden oluşan bir koleksiyon döndürür. (Devralındığı yer: DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetClassName() |
Bir bileşenin bu örneğinin sınıf adını döndürür. (Devralındığı yer: DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetComponentName() |
Bir bileşenin bu örneğinin adını döndürür. (Devralındığı yer: DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetConverter() |
Bir bileşenin bu örneği için tür dönüştürücüsü döndürür. (Devralındığı yer: DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetDefaultEvent() |
Bir bileşenin bu örneği için varsayılan olayı döndürür. (Devralındığı yer: DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetDefaultProperty() |
Bir bileşenin bu örneği için varsayılan özelliği döndürür. (Devralındığı yer: DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetEditor(Type) |
Bir bileşenin bu örneği için belirtilen türde bir düzenleyici döndürür. (Devralındığı yer: DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetEvents() |
Bir bileşenin bu örneği için olayları döndürür. (Devralındığı yer: DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetEvents(Attribute[]) |
Belirtilen öznitelik dizisini filtre olarak kullanarak bir bileşenin bu örneğinin olaylarını döndürür. (Devralındığı yer: DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetProperties() |
Bir bileşenin bu örneği için özellikleri döndürür. (Devralındığı yer: DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetProperties(Attribute[]) |
Öznitelik dizisini filtre olarak kullanarak bir bileşenin bu örneğinin özelliklerini döndürür. (Devralındığı yer: DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetPropertyOwner(PropertyDescriptor) |
Belirtilen özellik tanımlayıcısı tarafından açıklanan özelliği içeren bir nesnesi döndürür. (Devralındığı yer: DbConnectionStringBuilder) |
IDictionary.Add(Object, Object) |
Sağlanan anahtar ve değere sahip bir öğeyi nesnesine IDictionary ekler. (Devralındığı yer: DbConnectionStringBuilder) |
IDictionary.Contains(Object) |
Nesnenin belirtilen anahtara IDictionary sahip bir öğe içerip içermediğini belirler. (Devralındığı yer: DbConnectionStringBuilder) |
IDictionary.GetEnumerator() |
Nesne için IDictionary bir IDictionaryEnumerator nesne döndürür. (Devralındığı yer: DbConnectionStringBuilder) |
IDictionary.IsFixedSize |
Nesnenin sabit bir boyuta IDictionary sahip olup olmadığını belirten bir değer alır. (Devralındığı yer: DbConnectionStringBuilder) |
IDictionary.IsReadOnly |
IDictionary öğesinin salt okunur olup olmadığını belirten bir değer alır. (Devralındığı yer: DbConnectionStringBuilder) |
IDictionary.Item[Object] |
Belirtilen anahtarla öğesini alır veya ayarlar. (Devralındığı yer: DbConnectionStringBuilder) |
IDictionary.Remove(Object) |
Belirtilen anahtara sahip öğesini nesneden IDictionary kaldırır. (Devralındığı yer: DbConnectionStringBuilder) |
IEnumerable.GetEnumerator() |
Bir toplulukta tekrarlanan bir numaralandırıcı döndürür. (Devralındığı yer: DbConnectionStringBuilder) |
Uzantı Metotları
Cast<TResult>(IEnumerable) |
öğesinin IEnumerable öğelerini belirtilen türe atar. |
OfType<TResult>(IEnumerable) |
Öğesinin IEnumerable öğelerini belirtilen türe göre filtreler. |
AsParallel(IEnumerable) |
Sorgunun paralelleştirilmesini etkinleştirir. |
AsQueryable(IEnumerable) |
bir IEnumerable öğesini öğesine IQueryabledönüştürür. |