Udostępnij za pośrednictwem


OleDbConnectionStringBuilder Klasa

Definicja

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

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

Przykłady

Poniższa aplikacja konsolowa tworzy parametry połączenia dla kilku baz danych OLE DB. Najpierw przykład tworzy parametry połączenia dla bazy danych programu Microsoft Access, a następnie tworzy parametry połączenia dla bazy danych IBM DB2. Przykład analizuje również istniejący 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 OleDbConnectionStringBuilder 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.OleDb;

class Program
{
    static void Main(string[] args)
    {
        OleDbConnectionStringBuilder builder = new OleDbConnectionStringBuilder();
        builder.ConnectionString = @"Data Source=C:\Sample.mdb";

        // Call the Add method to explicitly add key/value
        // pairs to the internal collection.
        builder.Add("Provider", "Microsoft.Jet.Oledb.4.0");
        builder.Add("Jet OLEDB:Database Password", "MyPassword!");
        builder.Add("Jet OLEDB:System Database", @"C:\Workgroup.mdb");

        // Set up row-level locking.
        builder.Add("Jet OLEDB:Database Locking Mode", 1);

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

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

        // Pass the OleDbConnectionStringBuilder an existing
        // connection string, and you can retrieve and
        // modify any of the elements.
        builder.ConnectionString =
            "Provider=DB2OLEDB;Network Transport Library=TCPIP;" +
            "Network Address=192.168.0.12;Initial Catalog=DbAdventures;" +
            "Package Collection=SamplePackage;Default Schema=SampleSchema;";

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

        // Modify existing items.
        builder["Package Collection"] = "NewPackage";
        builder["Default Schema"] = "NewSchema";

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

        // 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 value, if
        // necessary.
        builder["User ID"] = "SampleUser";
        builder["Password"] = "SamplePassword";
        Console.WriteLine(builder.ConnectionString);

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

Module Module1
  Sub Main()
    Dim builder As New OleDbConnectionStringBuilder()
    builder.ConnectionString = "Data Source=C:\Sample.mdb"

    ' Call the Add method to explicitly add key/value
    ' pairs to the internal collection.
    builder.Add("Provider", "Microsoft.Jet.Oledb.4.0")
    builder.Add("Jet OLEDB:Database Password", "MyPassword!")
    builder.Add("Jet OLEDB:System Database", "C:\Workgroup.mdb")

    ' Set up row-level locking.
    builder.Add("Jet OLEDB:Database Locking Mode", 1)

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

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

    ' Pass the OleDbConnectionStringBuilder an existing 
    ' connection string, and you can retrieve and
    ' modify any of the elements.
    builder.ConnectionString = _
        "Provider=DB2OLEDB;Network Transport Library=TCPIP;" & _
        "Network Address=192.168.0.12;Initial Catalog=DbAdventures;" & _
        "Package Collection=SamplePackage;Default Schema=SampleSchema;"

    Console.WriteLine("Network Address = " & builder("Network Address").ToString())
    Console.WriteLine()

    ' Modify existing items.
    builder("Package Collection") = "NewPackage"
    builder("Default Schema") = "NewSchema"

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

    ' 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("User ID") = "SampleUser"
    builder("Password") = "SamplePassword"
    Console.WriteLine(builder.ConnectionString)

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

Uwagi

Konstruktor parametry połączenia umożliwia deweloperom programowe tworzenie składniowo 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 OLE DB, a deweloperzy mogą dodawać dowolne pary klucz/wartość dla innych wartości parametry połączenia. Klasa OleDbConnectionStringBuilder implementuje interfejs ICustomTypeDescriptor. Oznacza to, że klasa współpracuje z projektantami .NET programu Visual Studio w czasie projektowania. Gdy deweloperzy używają projektanta do tworzenia silnie typiowanych zestawów danych i silnie typiowanych połączeń w programie Visual Studio .NET, silnie typizowane parametry połączenia klasy konstruktora będą wyświetlać właściwości skojarzone z typem, a także będą miały konwertery, które mogą mapować typowe wartości znanych kluczy.

Deweloperzy, którzy muszą tworzyć parametry połączenia w ramach aplikacji, mogą używać OleDbConnectionStringBuilder klasy do tworzenia i modyfikowania parametrów połączenia. Klasa ułatwia również zarządzanie parametrami połączenia przechowywanymi w pliku konfiguracji aplikacji. Funkcja OleDbConnectionStringBuilder 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 znane klucze i odpowiadające im właściwości w OleDbConnectionStringBuilder klasie oraz ich wartości domyślne. Oprócz tych konkretnych wartości deweloperzy mogą dodawać do kolekcji wszystkie pary klucz/wartość, które znajdują się w wystąpieniu OleDbConnectionStringBuilder :

Klucz Właściwość Wartość domyślna
Nazwa pliku FileName ""
Dostawca Provider ""
Źródło danych DataSource ""
Utrwalanie informacji zabezpieczających PersistSecurityInfo Fałsz
Usługi OLE DB OleDbServices -13

Właściwość Item[] obsługuje próby wstawienia złośliwych wpisów. Na przykład poniższy kod, używając właściwości domyślnej Item[] (indeksator w języku C#) poprawnie ucieka przed zagnieżdżonym parą klucz/wartość:

Dim builder As _
    New System.Data.OleDb.OleDbConnectionStringBuilder
builder("Provider") = "Microsoft.Jet.OLEDB.4.0"
builder("Data Source") = "C:\Sample.mdb"
builder("User Id") = "Admin;NewValue=Bad"
System.Data.OleDb.OleDbConnectionStringBuilder builder =
    new System.Data.OleDb.OleDbConnectionStringBuilder();
builder["Provider"] = "Microsoft.Jet.OLEDB.4.0";
builder["Data Source"] = "C:\\Sample.mdb";
builder["User Id"] = "Admin;NewValue=Bad";

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

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Sample.mdb;User ID="Admin;NewValue=Bad"

Konstruktory

OleDbConnectionStringBuilder()

Inicjuje nowe wystąpienie klasy OleDbConnectionStringBuilder.

OleDbConnectionStringBuilder(String)

Inicjuje nowe wystąpienie klasy OleDbConnectionStringBuilder. 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)
DataSource

Pobiera lub ustawia nazwę źródła danych do nawiązania połączenia.

FileName

Pobiera lub ustawia nazwę pliku universal Data Link (UDL) na potrzeby nawiązywania połączenia ze źródłem danych.

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 OleDbConnectionStringBuilder.

OleDbServices

Pobiera lub ustawia wartość, która ma zostać przekazana dla klucza usług OLE DB w parametry połączenia.

PersistSecurityInfo

Pobiera lub ustawia wartość logiczną wskazującą, czy informacje poufne zabezpieczeń, takie jak hasło, są zwracane w ramach połączenia, jeśli połączenie jest otwarte, czy kiedykolwiek było otwarte.

Provider

Pobiera lub ustawia ciąg zawierający nazwę dostawcy danych skojarzonego z wewnętrznym parametry połączenia.

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ść OleDbConnectionStringBuilder wystąpienia.

ClearPropertyDescriptors()

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

(Odziedziczone po DbConnectionStringBuilder)
ContainsKey(String)

Określa, czy element OleDbConnectionStringBuilder 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 OleDbConnectionStringBuilder 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 OleDbConnectionStringBuilder z wystąpienia.

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ż