Freigeben über


OleDbConnectionStringBuilder Klasse

Definition

Bietet eine einfache Möglichkeit, den Inhalt von Verbindungszeichenfolgen, die von der OleDbConnection-Klasse verwendet werden, zu erstellen und zu verwalten.

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
Vererbung
OleDbConnectionStringBuilder
Attribute

Beispiele

Die folgende Konsolenanwendung erstellt Verbindungszeichenfolgen für mehrere OLE DB-Datenbanken. Zunächst wird im Beispiel eine Verbindungszeichenfolge für eine Microsoft Access-Datenbank und dann eine Verbindungszeichenfolge für eine IBM DB2-Datenbank erstellt. Das Beispiel analysiert auch eine vorhandene Verbindungszeichenfolge und zeigt verschiedene Möglichkeiten, den Inhalt des Verbindungszeichenfolge zu bearbeiten.

Hinweis

Das Beispiel umfasst ein Kennwort zur Veranschaulichung der Funktion von OleDbConnectionStringBuilder mit Verbindungszeichenfolgen. In den Anwendungen wird die Verwendung der Windows-Authentifizierung empfohlen. Wenn Sie ein Kennwort verwenden müssen, schließen Sie kein hartcodiertes Kennwort in die Anwendung ein.

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

Hinweise

Mithilfe des Verbindungszeichenfolgen-Generators können Entwickler syntaktisch korrekte Verbindungszeichenfolgen programmgesteuert erstellen sowie vorhandene Verbindungszeichenfolgen analysieren und neu erstellen, indem sie Eigenschaften und Methoden der Klasse verwenden. Der Verbindungszeichenfolge-Generator stellt stark typisierte Eigenschaften bereit, die den bekannten Schlüssel-Wert-Paaren entsprechen, die von OLE DB-Verbindungen zulässig sind, und Entwickler können beliebige Schlüssel-Wert-Paare für alle anderen Verbindungszeichenfolge-Werte hinzufügen. Die OleDbConnectionStringBuilder-Klasse implementiert die ICustomTypeDescriptor-Schnittstelle. Dies bedeutet, dass die Klasse zur Entwurfszeit mit Visual Studio .NET-Designern funktioniert. Wenn Entwickler den Designer verwenden, um stark typisierte DataSets und stark typisierte Verbindungen in Visual Studio .NET zu erstellen, zeigt die stark typisierte Verbindungszeichenfolge Builder-Klasse die eigenschaften an, die ihrem Typ zugeordnet sind, und verfügt auch über Konverter, die allgemeine Werte für bekannte Schlüssel zuordnen können.

Entwickler, die Verbindungszeichenfolgen als Teil von Anwendungen erstellen müssen, können die OleDbConnectionStringBuilder-Klasse verwenden, um Verbindungszeichenfolgen zu erstellen und zu ändern. Die Klasse vereinfacht auch die Verwaltung von Verbindungszeichenfolgen, die in einer Anwendungskonfigurationsdatei gespeichert sind. Die OleDbConnectionStringBuilder führt nur Überprüfungen für den begrenzten Satz bekannter Schlüssel-Wert-Paare durch. Daher kann diese Klasse verwendet werden, um ungültige Verbindungszeichenfolgen zu erstellen. In der folgenden Tabelle sind die bekannten Schlüssel und ihre entsprechenden Eigenschaften innerhalb der OleDbConnectionStringBuilder -Klasse und deren Standardwerte aufgeführt. Neben diesen spezifischen Werten können Entwickler der Auflistung beliebige Schlüssel-Wert-Paare hinzufügen, die in der OleDbConnectionStringBuilder instance enthalten sind:

Key Eigenschaft Standardwert
Dateiname FileName ""
Anbieter Provider ""
Data source DataSource ""
Sicherheitsinformationen permanent speichern PersistSecurityInfo False
OLE DB-Dienste OleDbServices -13

Die Item[] -Eigenschaft verarbeitet Versuche, böswillige Einträge einzufügen. Beispielsweise wird mit dem folgenden Code unter Verwendung der Standardeigenschaft Item[] (der Indexer in C#) das geschachtelte Schlüssel-Wert-Paar ordnungsgemäß escapen:

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

Das Ergebnis ist die folgende Verbindungszeichenfolge, die den ungültigen Wert sicher behandelt:

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

Konstruktoren

OleDbConnectionStringBuilder()

Initialisiert eine neue Instanz der OleDbConnectionStringBuilder-Klasse.

OleDbConnectionStringBuilder(String)

Initialisiert eine neue Instanz der OleDbConnectionStringBuilder-Klasse. Die bereitgestellte Verbindungszeichenfolge stellt die Daten für die internen Verbindungsinformationen der Instanz bereit.

Eigenschaften

BrowsableConnectionString

Ruft einen Wert ab, der angibt, ob die ConnectionString-Eigenschaft in Visual Studio-Designern sichtbar ist, oder legt diesen Wert fest.

(Geerbt von DbConnectionStringBuilder)
ConnectionString

Ruft die dem DbConnectionStringBuilder zugeordnete Verbindungszeichenfolge ab oder legt sie fest.

(Geerbt von DbConnectionStringBuilder)
Count

Ruft die aktuelle Anzahl von Schlüsseln ab, die in der ConnectionString-Eigenschaft enthalten sind.

(Geerbt von DbConnectionStringBuilder)
DataSource

Ruft den Namen der Datenquelle ab, mit der eine Verbindung hergestellt werden soll, oder legt diesen fest.

FileName

Ruft den Namen der Universal Data Link-Datei (UDL) zum Herstellen einer Verbindung mit der Datenquelle ab oder legt diesen fest.

IsFixedSize

Ruft einen Wert ab, der angibt, ob die DbConnectionStringBuilder eine feste Größe hat.

(Geerbt von DbConnectionStringBuilder)
IsReadOnly

Ruft einen Wert ab, der angibt, ob die DbConnectionStringBuilder schreibgeschützt ist.

(Geerbt von DbConnectionStringBuilder)
Item[String]

Ruft den Wert ab, der dem angegebenen Schlüssel zugeordnet ist, oder legt diesen fest. In C# ist diese Eigenschaft der Indexer.

Keys

Ruft eine ICollection ab, die die Schlüssel im OleDbConnectionStringBuilder enthält.

OleDbServices

Ruft den Wert ab, der für den OLE DB Services-Schlüssel innerhalb der Verbindungszeichenfolge übergeben werden soll, oder legt diesen fest.

PersistSecurityInfo

Ruft einen booleschen Wert ab, der angibt, ob sicherheitsrelevante Informationen, z. B. das Kennwort, als Teil der Verbindung zurückgegeben werden, wenn die Verbindung geöffnet ist oder sich jemals im geöffneten Zustand befunden hat, oder legt diesen fest.

Provider

Ruft eine Zeichenfolge ab, die den Namen des der internen Verbindungszeichenfolge zugeordneten Datenanbieters enthält, oder legt diese fest.

Values

Ruft ein ICollection ab, das die Werte im DbConnectionStringBuilder enthält.

(Geerbt von DbConnectionStringBuilder)

Methoden

Add(String, Object)

Fügt dem DbConnectionStringBuilder einen Eintrag mit dem angegebenen Schlüssel und Wert hinzu.

(Geerbt von DbConnectionStringBuilder)
Clear()

Löscht den Inhalt der OleDbConnectionStringBuilder-Instanz.

ClearPropertyDescriptors()

Löscht die Auflistung von PropertyDescriptor-Objekten, die dem DbConnectionStringBuilder zugeordnet sind.

(Geerbt von DbConnectionStringBuilder)
ContainsKey(String)

Stellt fest, ob der OleDbConnectionStringBuilder einen bestimmten Schlüssel enthält.

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
EquivalentTo(DbConnectionStringBuilder)

Vergleicht die Verbindungsinformationen in diesem DbConnectionStringBuilder-Objekt mit den Verbindungsinformationen im angegebenen Objekt.

(Geerbt von DbConnectionStringBuilder)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetProperties(Hashtable)

Füllt eine angegebene Hashtable mit Informationen zu allen Eigenschaften dieses DbConnectionStringBuilder.

(Geerbt von DbConnectionStringBuilder)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
Remove(String)

Entfernt den Eintrag mit dem angegebenen Schlüssel aus der OleDbConnectionStringBuilder-Instanz.

ShouldSerialize(String)

Gibt an, ob der angegebene Schlüssel in dieser DbConnectionStringBuilder-Instanz vorhanden ist.

(Geerbt von DbConnectionStringBuilder)
ToString()

Gibt die diesem DbConnectionStringBuilder zugeordnete Verbindungszeichenfolge zurück.

(Geerbt von DbConnectionStringBuilder)
TryGetValue(String, Object)

Ruft einen Wert ab, der dem von dieser OleDbConnectionStringBuilder-Instanz bereitgestellten Schlüssel entspricht.

Explizite Schnittstellenimplementierungen

ICollection.CopyTo(Array, Int32)

Kopiert die Elemente der ICollection in ein Array, beginnend bei einem bestimmten Array-Index.

(Geerbt von DbConnectionStringBuilder)
ICollection.IsSynchronized

Ruft einen Wert ab, der angibt, ob der Zugriff auf die ICollection synchronisiert (threadsicher) ist.

(Geerbt von DbConnectionStringBuilder)
ICollection.SyncRoot

Ruft ein Objekt ab, mit dem der Zugriff auf ICollection synchronisiert werden kann.

(Geerbt von DbConnectionStringBuilder)
ICustomTypeDescriptor.GetAttributes()

Gibt eine Auflistung benutzerdefinierter Attribute für diese Instanz einer Komponente zurück.

(Geerbt von DbConnectionStringBuilder)
ICustomTypeDescriptor.GetClassName()

Gibt den Klassennamen dieser Instanz einer Komponente zurück.

(Geerbt von DbConnectionStringBuilder)
ICustomTypeDescriptor.GetComponentName()

Gibt den Namen dieser Instanz einer Komponente zurück.

(Geerbt von DbConnectionStringBuilder)
ICustomTypeDescriptor.GetConverter()

Gibt einen Typkonverter für diese Instanz einer Komponente zurück.

(Geerbt von DbConnectionStringBuilder)
ICustomTypeDescriptor.GetDefaultEvent()

Gibt das Standardereignis für diese Instanz einer Komponente zurück.

(Geerbt von DbConnectionStringBuilder)
ICustomTypeDescriptor.GetDefaultProperty()

Gibt die Standardeigenschaft für diese Instanz einer Komponente zurück.

(Geerbt von DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEditor(Type)

Gibt einen Editor des angegebenen Typs für diese Instanz einer Komponente zurück.

(Geerbt von DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEvents()

Gibt die Ereignisse für diese Instanz einer Komponente zurück.

(Geerbt von DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEvents(Attribute[])

Gibt die Ereignisse für diese Instanz einer Komponente zurück, wobei das angegebene Attributarray als Filter verwendet wird.

(Geerbt von DbConnectionStringBuilder)
ICustomTypeDescriptor.GetProperties()

Gibt die Eigenschaften für diese Instanz einer Komponente zurück.

(Geerbt von DbConnectionStringBuilder)
ICustomTypeDescriptor.GetProperties(Attribute[])

Gibt die Eigenschaften für diese Instanz einer Komponente zurück, wobei das Attributarray als Filter verwendet wird.

(Geerbt von DbConnectionStringBuilder)
ICustomTypeDescriptor.GetPropertyOwner(PropertyDescriptor)

Gibt ein Objekt zurück, das die Eigenschaft enthält, die durch den Eigenschaftendeskriptor angegeben ist.

(Geerbt von DbConnectionStringBuilder)
IDictionary.Add(Object, Object)

Fügt dem IDictionary-Objekt ein Element mit dem angegebenen Schlüssel und Wert hinzu.

(Geerbt von DbConnectionStringBuilder)
IDictionary.Contains(Object)

Ermittelt, ob das IDictionary-Objekt ein Element mit dem angegebenen Schlüssel enthält.

(Geerbt von DbConnectionStringBuilder)
IDictionary.GetEnumerator()

Gibt ein IDictionaryEnumerator-Objekt für das IDictionary-Objekt zurück.

(Geerbt von DbConnectionStringBuilder)
IDictionary.Item[Object]

Ruft das Element mit dem angegebenen Schlüssel ab oder legt dieses fest.

(Geerbt von DbConnectionStringBuilder)
IDictionary.Remove(Object)

Entfernt das Element mit dem angegebenen Schlüssel aus dem IDictionary-Objekt.

(Geerbt von DbConnectionStringBuilder)
IEnumerable.GetEnumerator()

Gibt einen Enumerator zurück, der eine Auflistung durchläuft.

(Geerbt von DbConnectionStringBuilder)

Erweiterungsmethoden

Cast<TResult>(IEnumerable)

Wandelt die Elemente eines IEnumerable in den angegebenen Typ um

OfType<TResult>(IEnumerable)

Filtert die Elemente eines IEnumerable anhand eines angegebenen Typs

AsParallel(IEnumerable)

Ermöglicht die Parallelisierung einer Abfrage.

AsQueryable(IEnumerable)

Konvertiert einen IEnumerable in einen IQueryable.

Gilt für:

Weitere Informationen