Bagikan melalui


SqlConnectionStringBuilder Kelas

Definisi

Menyediakan cara sederhana untuk membuat dan mengelola konten string koneksi yang digunakan oleh kelas SqlConnection.

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
Warisan
SqlConnectionStringBuilder
Atribut

Contoh

Aplikasi konsol berikut membangun string koneksi untuk database SQL Server. Kode menggunakan kelas SqlConnectionStringBuilder untuk membuat string koneksi. Contoh kemudian mengurai string koneksi dan menunjukkan berbagai cara untuk memanipulasi kontennya.

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

Keterangan

Penyusun string koneksi memungkinkan pengembang membuat string koneksi yang benar secara terprogram, dan mengurai dan membangun kembali string koneksi yang ada, menggunakan properti dan metode kelas. Penyusun string koneksi menyediakan properti yang sangat diketik sesuai dengan pasangan kunci/nilai yang diketahui yang diizinkan oleh SQL Server. Jika perlu membuat string koneksi sebagai bagian dari aplikasi, Anda dapat menggunakan kelas SqlConnectionStringBuilder untuk membuat dan memodifikasi string koneksi. Kelas ini juga memudahkan untuk mengelola string koneksi yang disimpan dalam file konfigurasi aplikasi.

SqlConnectionStringBuilder melakukan pemeriksaan untuk pasangan kunci/nilai yang valid. Oleh karena itu, Anda tidak dapat menggunakan kelas ini untuk membuat string koneksi yang tidak valid; mencoba menambahkan pasangan yang tidak valid akan melemparkan pengecualian. Kelas mempertahankan kumpulan sinonim tetap dan dapat diterjemahkan dari sinonim ke nama kunci terkenal yang sesuai.

Misalnya, saat Anda menggunakan properti Item untuk mengambil nilai, Anda dapat menentukan string yang berisi sinonim apa pun untuk kunci yang Anda butuhkan. Misalnya, Anda dapat menentukan "Alamat Jaringan", "addr", atau sinonim lain yang dapat diterima untuk kunci ini dalam string koneksi saat Anda menggunakan anggota apa pun yang memerlukan string yang berisi nama kunci, seperti properti Item[String] atau metode Remove. Lihat properti ConnectionString untuk daftar lengkap sinonim yang dapat diterima.

Properti Item[String] menangani upaya untuk menyisipkan entri berbahaya. Misalnya, kode berikut, menggunakan properti Item default (pengindeks, di C#) dengan benar lolos dari pasangan kunci/nilai berlapis:

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

Hasilnya adalah string koneksi berikut yang menangani nilai yang tidak valid dengan cara yang aman:

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

Konstruktor

SqlConnectionStringBuilder()

Menginisialisasi instans baru kelas SqlConnectionStringBuilder.

SqlConnectionStringBuilder(String)

Menginisialisasi instans baru kelas SqlConnectionStringBuilder. String koneksi yang disediakan menyediakan data untuk informasi koneksi internal instans.

Properti

ApplicationIntent

Menyatakan jenis beban kerja aplikasi saat menyambungkan ke database di Grup Ketersediaan SQL Server. Anda dapat mengatur nilai properti ini dengan ApplicationIntent. Untuk informasi selengkapnya tentang dukungan SqlClient untuk Grup Ketersediaan AlwaysOn, lihat Dukungan SqlClient untuk Ketersediaan Tinggi, Pemulihan Bencana.

ApplicationName

Mendapatkan atau mengatur nama aplikasi yang terkait dengan string koneksi.

AsynchronousProcessing

Mendapatkan atau mengatur nilai Boolean yang menunjukkan apakah pemrosesan asinkron diizinkan oleh koneksi yang dibuat dengan menggunakan string koneksi ini.

AttachDBFilename

Mendapatkan atau mengatur string yang berisi nama file data utama. Ini termasuk nama jalur lengkap database yang dapat dilampirkan.

Authentication

Mendapatkan autentikasi string koneksi.

BrowsableConnectionString

Mendapatkan atau menetapkan nilai yang menunjukkan apakah properti ConnectionString terlihat di desainer Visual Studio.

(Diperoleh dari DbConnectionStringBuilder)
ColumnEncryptionSetting

Mendapatkan atau mengatur pengaturan enkripsi kolom untuk penyusun string koneksi.

ConnectionReset
Kedaluwarsa.

Usang. Mendapatkan atau mengatur nilai Boolean yang menunjukkan apakah koneksi diatur ulang saat digambar dari kumpulan koneksi.

ConnectionString

Mendapatkan atau mengatur string koneksi yang terkait dengan DbConnectionStringBuilder.

(Diperoleh dari DbConnectionStringBuilder)
ConnectRetryCount

Jumlah koneksi ulang yang dicoba setelah mengidentifikasi bahwa ada kegagalan koneksi diam. Ini harus berupa bilangan bulat antara 0 dan 255. Defaultnya adalah 1. Atur ke 0 untuk menonaktifkan menyambungkan kembali pada kegagalan koneksi diam. ArgumentException akan dilemparkan jika diatur ke nilai di luar rentang yang diizinkan.

ConnectRetryInterval

Jumlah waktu (dalam detik) antara setiap upaya koneksi ulang setelah mengidentifikasi bahwa ada kegagalan koneksi diam. Ini harus berupa bilangan bulat antara 1 dan 60. Defaultnya adalah 10 detik. ArgumentException akan dilemparkan jika diatur ke nilai di luar rentang yang diizinkan.

ConnectTimeout

Mendapatkan atau mengatur lamanya waktu (dalam detik) untuk menunggu koneksi ke server sebelum mengakhiri upaya dan menghasilkan kesalahan.

ContextConnection

Mendapatkan atau menetapkan nilai yang menunjukkan apakah koneksi klien/server atau dalam proses ke SQL Server harus dibuat.

Count

Mendapatkan jumlah kunci saat ini yang terkandung dalam properti ConnectionString.

(Diperoleh dari DbConnectionStringBuilder)
CurrentLanguage

Mendapatkan atau mengatur nama catatan Bahasa SQL Server.

DataSource

Mendapatkan atau mengatur nama atau alamat jaringan instans SQL Server untuk disambungkan.

EnclaveAttestationUrl

Mendapatkan atau mengatur Url pengesahan enklave yang akan digunakan dengan Always Encrypted berbasis enklave.

Encrypt

Mendapatkan atau mengatur nilai Boolean yang menunjukkan apakah SQL Server menggunakan enkripsi SSL untuk semua data yang dikirim antara klien dan server jika server memiliki sertifikat yang diinstal.

Enlist

Mendapatkan atau mengatur nilai Boolean yang menunjukkan apakah pengumpul koneksi SQL Server secara otomatis mendaftarkan koneksi dalam konteks transaksi alur pembuatan saat ini.

FailoverPartner

Mendapatkan atau mengatur nama atau alamat server mitra untuk disambungkan jika server utama tidak berfungsi.

InitialCatalog

Mendapatkan atau mengatur nama database yang terkait dengan koneksi.

IntegratedSecurity

Mendapatkan atau menetapkan nilai Boolean yang menunjukkan apakah ID Pengguna dan Kata Sandi ditentukan dalam koneksi (ketika false) atau apakah kredensial akun Windows saat ini digunakan untuk autentikasi (saat true).

IsFixedSize

Mendapatkan nilai yang menunjukkan apakah SqlConnectionStringBuilder memiliki ukuran tetap.

IsFixedSize

Mendapatkan nilai yang menunjukkan apakah DbConnectionStringBuilder memiliki ukuran tetap.

(Diperoleh dari DbConnectionStringBuilder)
IsReadOnly

Mendapatkan nilai yang menunjukkan apakah DbConnectionStringBuilder bersifat baca-saja.

(Diperoleh dari DbConnectionStringBuilder)
Item[String]

Mendapatkan atau mengatur nilai yang terkait dengan kunci yang ditentukan. Di C#, properti ini adalah pengindeks.

Keys

Mendapatkan ICollection yang berisi kunci di SqlConnectionStringBuilder.

LoadBalanceTimeout

Mendapatkan atau mengatur waktu minimum, dalam detik, agar koneksi hidup di kumpulan koneksi sebelum dihancurkan.

MaxPoolSize

Mendapatkan atau mengatur jumlah maksimum koneksi yang diizinkan dalam kumpulan koneksi untuk string koneksi khusus ini.

MinPoolSize

Mendapatkan atau mengatur jumlah minimum koneksi yang diizinkan dalam kumpulan koneksi untuk string koneksi khusus ini.

MultipleActiveResultSets

Jika true, aplikasi dapat mempertahankan beberapa tataan hasil aktif (MARS). Ketika false, aplikasi harus memproses atau membatalkan semua tataan hasil dari satu batch sebelum dapat menjalankan batch lain pada koneksi tersebut.

Untuk informasi selengkapnya, lihat Beberapa Kumpulan Hasil Aktif (MARS).

MultiSubnetFailover

Jika aplikasi Anda tersambung ke grup ketersediaan AlwaysOn (AG) atau Always On Failover Cluster Instance (FCI) pada subnet yang berbeda, pengaturan MultiSubnetFailover=true memberikan deteksi dan koneksi yang lebih cepat ke server aktif (saat ini). Untuk informasi selengkapnya tentang dukungan SqlClient untuk fitur AlwaysOn, lihat Dukungan SqlClient untuk Ketersediaan Tinggi, Pemulihan Bencana.

NetworkLibrary

Mendapatkan atau mengatur string yang berisi nama pustaka jaringan yang digunakan untuk membuat koneksi ke SQL Server.

PacketSize

Mendapatkan atau mengatur ukuran dalam byte paket jaringan yang digunakan untuk berkomunikasi dengan instans SQL Server.

Password

Mendapatkan atau mengatur kata sandi untuk akun SQL Server.

PersistSecurityInfo

Mendapatkan atau menetapkan nilai yang menunjukkan apakah informasi sensitif keamanan, seperti kata sandi atau token akses, harus dikembalikan sebagai bagian dari string koneksi pada koneksi yang dibuat dengan SqlConnectionStringBuilder ini setelah koneksi tersebut berada dalam status terbuka.

PoolBlockingPeriod

Perilaku periode pemblokiran untuk kumpulan koneksi.

Pooling

Mendapatkan atau menetapkan nilai Boolean yang menunjukkan apakah koneksi akan dikumpulkan atau dibuka secara eksplisit setiap kali koneksi diminta.

Replication

Mendapatkan atau mengatur nilai Boolean yang menunjukkan apakah replikasi didukung menggunakan koneksi.

TransactionBinding

Mendapatkan atau menetapkan nilai string yang menunjukkan bagaimana koneksi mempertahankan asosiasinya dengan transaksi System.Transactions yang terdaftar.

TransparentNetworkIPResolution

Ketika nilai kunci ini diatur ke true, aplikasi diperlukan untuk mengambil semua alamat IP untuk entri DNS tertentu dan mencoba terhubung dengan yang pertama dalam daftar. Jika koneksi tidak dibuat dalam waktu 0,5 detik, aplikasi akan mencoba menyambungkan ke semua yang lain secara paralel. Ketika jawaban pertama, aplikasi akan membuat koneksi dengan alamat IP responden.

TrustServerCertificate

Mendapatkan atau menetapkan nilai yang menunjukkan apakah saluran akan dienkripsi saat melewati rantai sertifikat untuk memvalidasi kepercayaan.

TypeSystemVersion

Mendapatkan atau mengatur nilai string yang menunjukkan sistem jenis yang diharapkan aplikasi.

UserID

Mendapatkan atau mengatur ID pengguna yang akan digunakan saat menyambungkan ke SQL Server.

UserInstance

Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengalihkan koneksi dari instans SQL Server Express default ke instans yang dimulai runtime yang berjalan di bawah akun pemanggil.

Values

Mendapatkan ICollection yang berisi nilai dalam SqlConnectionStringBuilder.

WorkstationID

Mendapatkan atau mengatur nama stasiun kerja yang tersambung ke SQL Server.

Metode

Add(String, Object)

Menambahkan entri dengan kunci dan nilai yang ditentukan ke dalam DbConnectionStringBuilder.

(Diperoleh dari DbConnectionStringBuilder)
Clear()

Menghapus konten instans SqlConnectionStringBuilder.

ClearPropertyDescriptors()

Menghapus kumpulan objek PropertyDescriptor pada DbConnectionStringBuilderterkait .

(Diperoleh dari DbConnectionStringBuilder)
ContainsKey(String)

Menentukan apakah SqlConnectionStringBuilder berisi kunci tertentu.

Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
EquivalentTo(DbConnectionStringBuilder)

Membandingkan informasi koneksi dalam objek DbConnectionStringBuilder ini dengan informasi koneksi di objek yang disediakan.

(Diperoleh dari DbConnectionStringBuilder)
GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetProperties(Hashtable)

Mengisi Hashtable yang disediakan dengan informasi tentang semua properti DbConnectionStringBuilderini .

(Diperoleh dari DbConnectionStringBuilder)
GetType()

Mendapatkan Type instans saat ini.

(Diperoleh dari Object)
MemberwiseClone()

Membuat salinan dangkal dari Objectsaat ini.

(Diperoleh dari Object)
Remove(String)

Menghapus entri dengan kunci yang ditentukan dari instans SqlConnectionStringBuilder.

ShouldSerialize(String)

Menunjukkan apakah kunci yang ditentukan ada dalam instans SqlConnectionStringBuilder ini.

ToString()

Mengembalikan string koneksi yang terkait dengan DbConnectionStringBuilderini.

(Diperoleh dari DbConnectionStringBuilder)
TryGetValue(String, Object)

Mengambil nilai yang sesuai dengan kunci yang disediakan dari SqlConnectionStringBuilderini.

Implementasi Antarmuka Eksplisit

ICollection.CopyTo(Array, Int32)

Menyalin elemen ICollection ke Array, dimulai pada indeks Array tertentu.

(Diperoleh dari DbConnectionStringBuilder)
ICollection.IsSynchronized

Mendapatkan nilai yang menunjukkan apakah akses ke ICollection disinkronkan (utas aman).

(Diperoleh dari DbConnectionStringBuilder)
ICollection.SyncRoot

Mendapatkan objek yang dapat digunakan untuk menyinkronkan akses ke ICollection.

(Diperoleh dari DbConnectionStringBuilder)
ICustomTypeDescriptor.GetAttributes()

Mengembalikan kumpulan atribut kustom untuk instans komponen ini.

(Diperoleh dari DbConnectionStringBuilder)
ICustomTypeDescriptor.GetClassName()

Mengembalikan nama kelas instans komponen ini.

(Diperoleh dari DbConnectionStringBuilder)
ICustomTypeDescriptor.GetComponentName()

Mengembalikan nama instans komponen ini.

(Diperoleh dari DbConnectionStringBuilder)
ICustomTypeDescriptor.GetConverter()

Mengembalikan pengonversi jenis untuk instans komponen ini.

(Diperoleh dari DbConnectionStringBuilder)
ICustomTypeDescriptor.GetDefaultEvent()

Mengembalikan peristiwa default untuk instans komponen ini.

(Diperoleh dari DbConnectionStringBuilder)
ICustomTypeDescriptor.GetDefaultProperty()

Mengembalikan properti default untuk instans komponen ini.

(Diperoleh dari DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEditor(Type)

Mengembalikan editor dari jenis yang ditentukan untuk instans komponen ini.

(Diperoleh dari DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEvents()

Mengembalikan peristiwa untuk instans komponen ini.

(Diperoleh dari DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEvents(Attribute[])

Mengembalikan peristiwa untuk instans komponen ini menggunakan array atribut yang ditentukan sebagai filter.

(Diperoleh dari DbConnectionStringBuilder)
ICustomTypeDescriptor.GetProperties()

Mengembalikan properti untuk instans komponen ini.

(Diperoleh dari DbConnectionStringBuilder)
ICustomTypeDescriptor.GetProperties(Attribute[])

Mengembalikan properti untuk instans komponen ini menggunakan array atribut sebagai filter.

(Diperoleh dari DbConnectionStringBuilder)
ICustomTypeDescriptor.GetPropertyOwner(PropertyDescriptor)

Mengembalikan objek yang berisi properti yang dijelaskan oleh deskriptor properti yang ditentukan.

(Diperoleh dari DbConnectionStringBuilder)
IDictionary.Add(Object, Object)

Menambahkan elemen dengan kunci dan nilai yang disediakan ke objek IDictionary.

(Diperoleh dari DbConnectionStringBuilder)
IDictionary.Contains(Object)

Menentukan apakah objek IDictionary berisi elemen dengan kunci yang ditentukan.

(Diperoleh dari DbConnectionStringBuilder)
IDictionary.GetEnumerator()

Mengembalikan objek IDictionaryEnumerator untuk objek IDictionary.

(Diperoleh dari DbConnectionStringBuilder)
IDictionary.IsFixedSize

Mendapatkan nilai yang menunjukkan apakah objek IDictionary memiliki ukuran tetap.

(Diperoleh dari DbConnectionStringBuilder)
IDictionary.IsReadOnly

Mendapatkan nilai yang menunjukkan apakah IDictionary bersifat baca-saja.

(Diperoleh dari DbConnectionStringBuilder)
IDictionary.Item[Object]

Mendapatkan atau mengatur elemen dengan kunci yang ditentukan.

(Diperoleh dari DbConnectionStringBuilder)
IDictionary.Remove(Object)

Menghapus elemen dengan kunci yang ditentukan dari objek IDictionary.

(Diperoleh dari DbConnectionStringBuilder)
IEnumerable.GetEnumerator()

Mengembalikan enumerator yang melakukan iterasi melalui koleksi.

(Diperoleh dari DbConnectionStringBuilder)

Metode Ekstensi

Cast<TResult>(IEnumerable)

Melemparkan elemen IEnumerable ke jenis yang ditentukan.

OfType<TResult>(IEnumerable)

Memfilter elemen IEnumerable berdasarkan jenis tertentu.

AsParallel(IEnumerable)

Mengaktifkan paralelisasi kueri.

AsQueryable(IEnumerable)

Mengonversi IEnumerable menjadi IQueryable.

Berlaku untuk

Lihat juga

  • String Koneksi (ADO.NET)
  • Gambaran Umum ADO.NET