SqlConnectionStringBuilder 類別
This page is specific to:.NET Framework Version:2.03.03.5
.NET Framework 類別庫
SqlConnectionStringBuilder 類別

注意:這個類別是 .NET Framework 2.0 版的新功能。

提供簡單的方法,以建立和管理 SqlConnection 類別使用之連接字串的內容。

命名空間: System.Data.SqlClient
組件: System.Data (在 system.data.dll 中)

語法

Public NotInheritable Class SqlConnectionStringBuilder
    Inherits DbConnectionStringBuilder
Dim instance As SqlConnectionStringBuilder
此語言目前尚未提供程式碼範例。
public final class SqlConnectionStringBuilder extends DbConnectionStringBuilder
備註

連接字串產生器可讓開發人員使用類別的屬性和方法,以程式設計的方式建立語法正確的連接字串,並剖析和重建現有的連接字串。連接字串產生器提供強型別 (Strongly Typed) 屬性,其與 SQL Server 允許的已知索引鍵/值組相對應。需要將連接字串做為應用程式的一部分來建立的開發人員,可以使用 SqlConnectionStringBuilder 類別,建置和修改連接字串。該類別也使管理應用程式組態檔中儲存的連接字串更加容易。

SqlConnectionStringBuilder 為有效的索引鍵/值組執行檢查。因此,您無法使用這個類別建立無效的連接字串。嘗試加入無效配對將擲回例外狀況。該類別會維護固定的同義資料表 (Synonym) 集合,並可以從同義資料表轉譯為對應的已知索引鍵名稱。

例如,在使用 Item 屬性擷取值時,可以為您需要的索引鍵指定包含任何同義資料表的字串。例如,使用任一要求包含索引鍵名稱之字串的成員時 (如 Item 屬性或 Remove 方法),您可以在連接字串內對這個索引鍵指定 "Network Address"、"addr" 或任何其他可接受的同義資料表。如需可接受同義資料表的完整清單,請參閱 ConnectionString 屬性。

Item 屬性處理常式會嘗試插入惡意項目。例如,使用預設項目屬性 (在 C# 中為索引子) 的下列程式碼會正確地逸出巢狀索引鍵/值組。

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

結果是產生下列連接字串,它會以較安全的方式處理無效值:

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

下列主控台應用程式會建置 SQL Server 2005 資料庫的連接字串。該程式碼使用 SqlConnectionStringBuilder 類別建立連接字串,然後將 SqlConnectionStringBuilder 執行個體的 ConnectionString 屬性傳遞至連接類別的建構函式。範例還會剖析現有的連接字串,並示範操作連接字串內容的各種方式。

Note注意事項

此範例包含密碼,以示範 SqlConnectionStringBuilder 如何配合連接字串運作。建議您在應用程式中使用 Windows 驗證。如果必須使用密碼,切勿在您的應用程式中包括硬式編碼密碼。

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

繼承階層架構

System.Object
   System.Data.Common.DbConnectionStringBuilder
    System.Data.SqlClient.SqlConnectionStringBuilder
執行緒安全

這個型別的所有公用靜態成員 (即 Visual Basic 中的 Shared 成員) 都是安全執行緒。並非所有的執行個體成員均為安全執行緒。
平台

Windows 98、 Windows 2000 SP4、 Windows Millennium Edition、 Windows Server 2003、 Windows XP Media Center Edition、 Windows XP Professional x64 Edition、 Windows XP SP2、 Windows XP Starter Edition

.NET Framework 並不支援各種平台的所有版本。如需支援平台版本的相關資訊,請參閱系統需求一節的內容。

版本資訊

.NET Framework

支援版本:2.0
請參閱

© 2009 Microsoft Corporation. 著作權所有,並保留一切權利。   使用規定 | 商標 | 隱私權聲明
Page view tracker
對這個輕量型程式庫評分
x
ScriptFree 的輕量型組建 (loband) 新增您要求的功能: 搜尋方塊與預設語言代碼選擇。
您喜歡搜尋方塊嗎?
您喜歡索引標籤式的程式碼區塊嗎?
本主題的實用性如何?
告訴我們更多關於您的想法。
謝謝
x
您寶貴的意見可以協助我們改善 MSDN Online 的品質。
意見
切換檢視
一般
輕量型
ScriptFree
切換檢視