OdbcConnectionStringBuilder Klasa

Definicja

Zapewnia prosty sposób tworzenia zawartości parametrów połączenia używanych przez klasę OdbcConnection i zarządzania nimi.

public ref class OdbcConnectionStringBuilder sealed : System::Data::Common::DbConnectionStringBuilder
public sealed class OdbcConnectionStringBuilder : System.Data.Common.DbConnectionStringBuilder
[System.ComponentModel.TypeConverter(typeof(System.Data.Odbc.OdbcConnectionStringBuilder+OdbcConnectionStringBuilderConverter))]
public sealed class OdbcConnectionStringBuilder : System.Data.Common.DbConnectionStringBuilder
type OdbcConnectionStringBuilder = class
    inherit DbConnectionStringBuilder
[<System.ComponentModel.TypeConverter(typeof(System.Data.Odbc.OdbcConnectionStringBuilder+OdbcConnectionStringBuilderConverter))>]
type OdbcConnectionStringBuilder = class
    inherit DbConnectionStringBuilder
Public NotInheritable Class OdbcConnectionStringBuilder
Inherits DbConnectionStringBuilder
Dziedziczenie
OdbcConnectionStringBuilder
Atrybuty

Przykłady

Poniższa aplikacja konsolowa tworzy parametry połączenia dla kilku baz danych ODBC. Najpierw przykład tworzy parametry połączenia dla bazy danych programu Microsoft Access. Następnie tworzy parametry połączenia dla bazy danych IBM DB2. Przykład analizuje również istniejącą parametry połączenia i demonstruje różne sposoby manipulowania zawartością parametry połączenia.

Uwaga

Ten przykład zawiera hasło, które pokazuje, jak OdbcConnectionStringBuilder działa z parametrami połączenia. W aplikacjach zalecamy użycie uwierzytelniania systemu Windows. Jeśli musisz użyć hasła, nie dołączaj w aplikacji trwale zakodowanego hasła.

using System.Data.Odbc;

class Program
{
    static void Main()
    {
        OdbcConnectionStringBuilder builder =
            new OdbcConnectionStringBuilder();
        builder.Driver = "Microsoft Access Driver (*.mdb)";

        // Call the Add method to explicitly add key/value
        // pairs to the internal collection.
        builder.Add("Dbq", "C:\\info.mdb");
        builder.Add("Uid", "Admin");
        builder.Add("Pwd", "pass!word1");

        Console.WriteLine(builder.ConnectionString);
        Console.WriteLine();

        // Clear current values and reset known keys to their
        // default values.
        builder.Clear();

        // Pass the OdbcConnectionStringBuilder an existing
        // connection string, and you can retrieve and
        // modify any of the elements.
        builder.ConnectionString =
            "driver={IBM DB2 ODBC DRIVER};Database=SampleDB;" +
            "hostname=SampleServerName;port=SamplePortNum;" +
            "protocol=TCPIP;uid=Admin;pwd=pass!word1";

        Console.WriteLine("protocol = "
            + builder["protocol"].ToString());
        Console.WriteLine();

        // Modify existing items.
        builder["uid"] = "NewUser";
        builder["pwd"] = "Pass@word2";

        // Call the Remove method to remove items from
        // the collection of key/value pairs.
        builder.Remove("port");

        // Note that calling Remove on a nonexistent item does not
        // throw an exception.
        builder.Remove("BadItem");
        Console.WriteLine(builder.ConnectionString);
        Console.WriteLine();

        // Setting the indexer adds the associated value, if
        // necessary.
        builder["NewKey"] = "newValue";
        Console.WriteLine(builder.ConnectionString);

        Console.WriteLine("Press Enter to finish.");
        Console.ReadLine();
    }
}
Imports System.Data.Odbc    

Module Module1
  Sub Main()
    Dim builder As New OdbcConnectionStringBuilder()
    builder.Driver = "Microsoft Access Driver (*.mdb)"

    ' Call the Add method to explicitly add key/value
    ' pairs to the internal collection.
    builder.Add("Dbq", "C:\info.mdb")
    builder.Add("Uid", "Admin")
    builder.Add("Pwd", "pass!word1")

    Console.WriteLine(builder.ConnectionString)
    Console.WriteLine()

    ' Clear current values and reset known keys to their
    ' default values.
    builder.Clear()

    ' Pass the OdbcConnectionStringBuilder an existing 
    ' connection string, and you can retrieve and
    ' modify any of the elements.
    builder.ConnectionString = _
        "driver={IBM DB2 ODBC DRIVER};Database=SampleDB;" & _
        "hostname=SampleServerName;port=SamplePortNum;" & _
        "protocol=TCPIP;uid=Admin;pwd=pass!word1"

    Console.WriteLine("protocol = " & builder("protocol").ToString())
    Console.WriteLine()

    ' Modify existing items:
    builder("uid") = "NewUser"
    builder("pwd") = "Pass@word2"

    ' Call the Remove method to remove items from 
    ' the collection of key/value pairs.
    builder.Remove("port")

    ' Note that calling Remove on a nonexistent item does not
    ' throw an exception.
    builder.Remove("BadItem")
    Console.WriteLine(builder.ConnectionString)
    Console.WriteLine()

    ' The Item property is the default for the class, 
    ' and setting the Item property adds the value, if 
    ' necessary.
    builder("NewKey") = "newValue"
    Console.WriteLine(builder.ConnectionString)

    Console.WriteLine("Press Enter to finish.")
    Console.ReadLine()
  End Sub
End Module

Uwagi

Konstruktorzy parametry połączenia umożliwiają deweloperom programowe tworzenie syntaktycznie poprawnych parametrów połączenia oraz analizowanie i ponowne kompilowanie istniejących parametrów połączenia przy użyciu właściwości i metod klasy. Konstruktor parametry połączenia udostępnia silnie typizowane właściwości odpowiadające znanym parom klucz/wartość dozwolonym przez połączenia ODBC, a deweloperzy mogą dodawać dowolne pary klucz/wartość dla innych wartości parametry połączenia.

Deweloperzy, którzy muszą tworzyć parametry połączenia w ramach aplikacji, mogą używać OdbcConnectionStringBuilder klasy do tworzenia i modyfikowania parametrów połączenia. Klasa ułatwia również zarządzanie parametrami połączenia przechowywanymi w pliku konfiguracji aplikacji. OdbcConnectionStringBuilder Wykonuje kontrole tylko dla ograniczonego zestawu znanych par klucz/wartość. W związku z tym ta klasa może służyć do tworzenia nieprawidłowych parametrów połączenia. W poniższej tabeli wymieniono określone znane klucze wraz z odpowiednimi właściwościami w OdbcConnectionStringBuilder klasie oraz ich wartościami domyślnymi. Oprócz tych konkretnych wartości deweloperzy mogą dodawać do kolekcji wszystkie pary klucz/wartość, które znajdują się w wystąpieniu OdbcConnectionStringBuilder .

Klucz Właściwość Komentarz Wartość domyślna
Sterownik Driver Deweloperzy nie powinni uwzględniać nawiasów klamrowych otaczających nazwę sterownika podczas ustawiania Driver właściwości . Wystąpienie OdbcConnectionStringBuilder dodaje nawiasy klamrowe zgodnie z potrzebami. Pusty ciąg
DSN Dsn Pusty ciąg

Jeśli jakakolwiek wartość (inna niż Driver wartość) w parametry połączenia zawiera średnik (;), OdbcConnectionStringBuilder wartość otacza znaki cudzysłowu w parametry połączenia. Aby uniknąć tego problemu Driver z wartością, która często zawiera średnik, OdbcConnectionStringBuilder klasa zawsze otacza tę wartość nawiasami klamrowymi. Specyfikacja ODBC wskazuje, że wartości sterowników, które zawierają średniki, muszą być otoczone nawiasami klamrowymi, a ta klasa obsługuje to za Ciebie.

Właściwość Item[] obsługuje próby wstawienia złośliwego kodu. Na przykład poniższy kod używający właściwości domyślnej Item[] (indeksator w języku C#) poprawnie unika zagnieżdżonej pary klucz/wartość.

Dim builder As _
 New System.Data.Odbc.OdbcConnectionStringBuilder
' Take advantage of the Driver property.
builder.Driver = "SQL Server"
builder("Server") = "MyServer;NewValue=Bad"
Console.WriteLine(builder.ConnectionString)
System.Data.Odbc.OdbcConnectionStringBuilder builder =
  new System.Data.Odbc.OdbcConnectionStringBuilder();
// Take advantage of the Driver property.
builder.Driver = "SQL Server";
builder["Server"] = "MyServer;NewValue=Bad";
Console.WriteLine(builder.ConnectionString);

Wynik jest następujący parametry połączenia, który obsługuje nieprawidłową wartość w bezpieczny sposób:

Driver={SQL Server};Server="MyServer;NewValue=Bad"

Konstruktory

OdbcConnectionStringBuilder()

Inicjuje nowe wystąpienie klasy OdbcConnectionStringBuilder.

OdbcConnectionStringBuilder(String)

Inicjuje nowe wystąpienie klasy OdbcConnectionStringBuilder. Podany parametry połączenia dostarcza dane dla informacji o połączeniu wewnętrznym wystąpienia.

Właściwości

BrowsableConnectionString

Pobiera lub ustawia wartość wskazującą, czy właściwość jest widoczna ConnectionString w projektanci programu Visual Studio.

(Odziedziczone po DbConnectionStringBuilder)
ConnectionString

Pobiera lub ustawia parametry połączenia skojarzone z elementem DbConnectionStringBuilder.

(Odziedziczone po DbConnectionStringBuilder)
Count

Pobiera bieżącą liczbę kluczy zawartych we ConnectionString właściwości .

(Odziedziczone po DbConnectionStringBuilder)
Driver

Pobiera lub ustawia nazwę sterownika ODBC skojarzonego z połączeniem.

Dsn

Pobiera lub ustawia nazwę źródła danych (DSN) skojarzonego z połączeniem.

IsFixedSize

Pobiera wartość wskazującą, czy element DbConnectionStringBuilder ma stały rozmiar.

(Odziedziczone po DbConnectionStringBuilder)
IsReadOnly

Pobiera wartość wskazującą, czy DbConnectionStringBuilder element jest tylko do odczytu.

(Odziedziczone po DbConnectionStringBuilder)
Item[String]

Pobiera lub ustawia wartość skojarzona z określonym kluczem. W języku C# ta właściwość jest indeksatorem.

Keys

Pobiera element ICollection zawierający klucze w obiekcie OdbcConnectionStringBuilder.

Values

Pobiera element ICollection zawierający wartości w obiekcie DbConnectionStringBuilder.

(Odziedziczone po DbConnectionStringBuilder)

Metody

Add(String, Object)

Dodaje wpis z określonym kluczem i wartością do elementu DbConnectionStringBuilder.

(Odziedziczone po DbConnectionStringBuilder)
Clear()

Czyści zawartość OdbcConnectionStringBuilder wystąpienia.

ClearPropertyDescriptors()

Czyści kolekcję PropertyDescriptor obiektów na skojarzonym DbConnectionStringBuilderobiekcie .

(Odziedziczone po DbConnectionStringBuilder)
ContainsKey(String)

Określa, czy element OdbcConnectionStringBuilder zawiera określony klucz.

Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
EquivalentTo(DbConnectionStringBuilder)

Porównuje informacje o połączeniu w tym DbConnectionStringBuilder obiekcie z informacjami o połączeniu w podanym obiekcie.

(Odziedziczone po DbConnectionStringBuilder)
GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetProperties(Hashtable)

Wypełnia element podany Hashtable przy użyciu informacji o wszystkich właściwościach tego obiektu DbConnectionStringBuilder.

(Odziedziczone po DbConnectionStringBuilder)
GetType()

Type Pobiera wartość bieżącego wystąpienia.

(Odziedziczone po Object)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
Remove(String)

Usuwa wpis z określonym kluczem OdbcConnectionStringBuilder z wystąpienia.

ShouldSerialize(String)

Wskazuje, czy określony klucz istnieje w tym DbConnectionStringBuilder wystąpieniu.

(Odziedziczone po DbConnectionStringBuilder)
ToString()

Zwraca parametry połączenia skojarzone z tym DbConnectionStringBuilderelementem .

(Odziedziczone po DbConnectionStringBuilder)
TryGetValue(String, Object)

Pobiera wartość odpowiadającą podanemu kluczowi z tego OdbcConnectionStringBuilderelementu .

Jawne implementacje interfejsu

ICollection.CopyTo(Array, Int32)

Kopiuje elementy ICollection elementu do obiektu Array, zaczynając od określonego Array indeksu.

(Odziedziczone po DbConnectionStringBuilder)
ICollection.IsSynchronized

Pobiera wartość wskazującą, czy dostęp do elementu ICollection jest synchronizowany (bezpieczny wątk).

(Odziedziczone po DbConnectionStringBuilder)
ICollection.SyncRoot

Pobiera obiekt, który może służyć do synchronizowania dostępu do obiektu ICollection.

(Odziedziczone po DbConnectionStringBuilder)
ICustomTypeDescriptor.GetAttributes()

Zwraca kolekcję atrybutów niestandardowych dla tego wystąpienia składnika.

(Odziedziczone po DbConnectionStringBuilder)
ICustomTypeDescriptor.GetClassName()

Zwraca nazwę klasy tego wystąpienia składnika.

(Odziedziczone po DbConnectionStringBuilder)
ICustomTypeDescriptor.GetComponentName()

Zwraca nazwę tego wystąpienia składnika.

(Odziedziczone po DbConnectionStringBuilder)
ICustomTypeDescriptor.GetConverter()

Zwraca konwerter typów dla tego wystąpienia składnika.

(Odziedziczone po DbConnectionStringBuilder)
ICustomTypeDescriptor.GetDefaultEvent()

Zwraca zdarzenie domyślne dla tego wystąpienia składnika.

(Odziedziczone po DbConnectionStringBuilder)
ICustomTypeDescriptor.GetDefaultProperty()

Zwraca właściwość domyślną dla tego wystąpienia składnika.

(Odziedziczone po DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEditor(Type)

Zwraca edytor określonego typu dla tego wystąpienia składnika.

(Odziedziczone po DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEvents()

Zwraca zdarzenia dla tego wystąpienia składnika.

(Odziedziczone po DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEvents(Attribute[])

Zwraca zdarzenia dla tego wystąpienia składnika przy użyciu określonej tablicy atrybutów jako filtru.

(Odziedziczone po DbConnectionStringBuilder)
ICustomTypeDescriptor.GetProperties()

Zwraca właściwości tego wystąpienia składnika.

(Odziedziczone po DbConnectionStringBuilder)
ICustomTypeDescriptor.GetProperties(Attribute[])

Zwraca właściwości tego wystąpienia składnika przy użyciu tablicy atrybutów jako filtru.

(Odziedziczone po DbConnectionStringBuilder)
ICustomTypeDescriptor.GetPropertyOwner(PropertyDescriptor)

Zwraca obiekt, który zawiera właściwość opisaną przez deskryptor określonej właściwości.

(Odziedziczone po DbConnectionStringBuilder)
IDictionary.Add(Object, Object)

Dodaje element z podanym kluczem i wartością IDictionary do obiektu.

(Odziedziczone po DbConnectionStringBuilder)
IDictionary.Contains(Object)

Określa, czy IDictionary obiekt zawiera element z określonym kluczem.

(Odziedziczone po DbConnectionStringBuilder)
IDictionary.GetEnumerator()

IDictionaryEnumerator Zwraca obiekt dla IDictionary obiektu.

(Odziedziczone po DbConnectionStringBuilder)
IDictionary.Item[Object]

Pobiera lub ustawia element przy użyciu określonego klucza.

(Odziedziczone po DbConnectionStringBuilder)
IDictionary.Remove(Object)

Usuwa element z określonym kluczem IDictionary z obiektu.

(Odziedziczone po DbConnectionStringBuilder)
IEnumerable.GetEnumerator()

Zwraca moduł wyliczający, który iteruje po kolekcji.

(Odziedziczone po DbConnectionStringBuilder)

Metody rozszerzania

Cast<TResult>(IEnumerable)

Rzutuje elementy obiektu IEnumerable na określony typ.

OfType<TResult>(IEnumerable)

Filtruje elementy IEnumerable elementu na podstawie określonego typu.

AsParallel(IEnumerable)

Umożliwia równoległość zapytania.

AsQueryable(IEnumerable)

Konwertuje element IEnumerable na .IQueryable

Dotyczy

Zobacz też