OdbcConnectionStringBuilder Klas

Definitie

Biedt een eenvoudige manier om de inhoud van verbindingsreeksen te maken en te beheren die door de OdbcConnection klasse worden gebruikt.

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

Voorbeelden

De volgende consoletoepassing bouwt verbindingsreeksen voor verschillende ODBC-databases. Eerst maakt het voorbeeld een verbindingsreeks voor een Microsoft Access-database. Vervolgens wordt er een verbindingsreeks gemaakt voor een IBM DB2-database. Het voorbeeld parseert ook een bestaande verbindingsreeks en demonstreert verschillende manieren om de inhoud van de verbindingsreeks te bewerken.

using System.Data.Odbc;

class Program
{
    static void Main()
    {
        OdbcConnectionStringBuilder builder = new()
            {
                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");

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

        Console.WriteLine($"protocol = {builder["protocol"].ToString()}");
        Console.WriteLine();

        // 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);
    }
}
Imports System.Data.Odbc

Module Module1
    Sub Main()
        Dim builder As New OdbcConnectionStringBuilder With {
            .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")

        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"

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

        ' 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

Opmerkingen

Met de verbindingsreeks opbouwfuncties kunnen ontwikkelaars programmatisch syntactisch juiste verbindingsreeksen maken en bestaande verbindingsreeksen parseren en herbouwen, met behulp van eigenschappen en methoden van de klasse. De verbindingsreeks builder biedt sterk getypte eigenschappen die overeenkomen met de bekende sleutel-/waardeparen die zijn toegestaan door ODBC-verbindingen en ontwikkelaars kunnen willekeurige sleutel-/waardeparen toevoegen voor andere verbindingsreeks-waarden.

Ontwikkelaars die verbindingsreeksen moeten maken als onderdeel van toepassingen, kunnen de OdbcConnectionStringBuilder klasse gebruiken om verbindingsreeksen te bouwen en te wijzigen. De klasse maakt het ook eenvoudig om verbindingsreeksen te beheren die zijn opgeslagen in een toepassingsconfiguratiebestand. OdbcConnectionStringBuilder voert alleen controles uit voor de beperkte set bekende sleutel-/waardeparen. Daarom kan deze klasse worden gebruikt om ongeldige verbindingsreeksen te maken. De volgende tabel bevat de specifieke bekende sleutels samen met de bijbehorende eigenschappen binnen de OdbcConnectionStringBuilder klasse en de standaardwaarden. Naast deze specifieke waarden kunnen ontwikkelaars alle sleutel-/waardeparen toevoegen aan de verzameling die zich in het OdbcConnectionStringBuilder exemplaar bevindt.

Key Property Comment Standaardwaarde
Stuurprogramma Driver Ontwikkelaars mogen de accolades rondom de naam van het stuurprogramma niet opnemen wanneer ze de Driver eigenschap instellen. Het OdbcConnectionStringBuilder exemplaar voegt zo nodig accolades toe. Lege tekenreeks
DSN Dsn Lege tekenreeks

Als een waarde (behalve de Driver waarde) in de verbindingsreeks een puntkomma (;) bevat, bevat de OdbcConnectionStringBuilder de waarde tussen aanhalingstekens in de verbindingsreeks. Om dit probleem te voorkomen met de Driver waarde die vaak een puntkomma bevat, plaatst de OdbcConnectionStringBuilder klasse deze waarde altijd tussen accolades. De ODBC-specificatie geeft aan dat stuurprogrammawaarden met puntkomma's moeten worden omgeven door accolades en deze klasse verwerkt dit voor u.

De Item[] eigenschap verwerkt pogingen om schadelijke code in te voegen. De volgende code, met behulp van de standaardeigenschap Item[] (de indexeerfunctie, in C#), escapet bijvoorbeeld correct aan het geneste sleutel-/waardepaar.

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

Het resultaat is de volgende verbindingsreeks die de ongeldige waarde op een veilige manier verwerkt:

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

Constructors

Name Description
OdbcConnectionStringBuilder()

Initialiseert een nieuw exemplaar van de OdbcConnectionStringBuilder klasse.

OdbcConnectionStringBuilder(String)

Initialiseert een nieuw exemplaar van de OdbcConnectionStringBuilder klasse. De opgegeven verbindingsreeks levert de gegevens voor de interne verbindingsgegevens van het exemplaar.

Eigenschappen

Name Description
BrowsableConnectionString

Hiermee wordt een waarde opgehaald of ingesteld die aangeeft of de eigenschap ConnectionString zichtbaar is in Visual Studio ontwerpers.

(Overgenomen van DbConnectionStringBuilder)
ConnectionString

Hiermee haalt u de verbindingsreeks op die is gekoppeld aan de DbConnectionStringBuilder.

(Overgenomen van DbConnectionStringBuilder)
Count

Hiermee haalt u het huidige aantal sleutels op dat zich in de ConnectionString eigenschap bevindt.

(Overgenomen van DbConnectionStringBuilder)
Driver

Hiermee haalt u de naam op van het ODBC-stuurprogramma dat aan de verbinding is gekoppeld.

Dsn

Hiermee haalt u de naam op van de naam van de gegevensbron (DSN) die aan de verbinding is gekoppeld.

IsFixedSize

Hiermee wordt een waarde opgehaald die aangeeft of de grootte van de DbConnectionStringBuilder waarde vast is.

(Overgenomen van DbConnectionStringBuilder)
IsReadOnly

Hiermee wordt een waarde opgehaald die aangeeft of het DbConnectionStringBuilder kenmerk Alleen-lezen is.

(Overgenomen van DbConnectionStringBuilder)
Item[String]

Hiermee haalt u de waarde op die is gekoppeld aan de opgegeven sleutel of stelt u deze in. In C# is deze eigenschap de indexeerfunctie.

Keys

Hiermee haalt u een ICollection op met de sleutels in de OdbcConnectionStringBuilder.

Values

Hiermee haalt u een ICollection op met de waarden in de DbConnectionStringBuilder.

(Overgenomen van DbConnectionStringBuilder)

Methoden

Name Description
Add(String, Object)

Voegt een vermelding toe met de opgegeven sleutel en waarde in de DbConnectionStringBuilder.

(Overgenomen van DbConnectionStringBuilder)
Clear()

Hiermee wist u de inhoud van het OdbcConnectionStringBuilder exemplaar.

ClearPropertyDescriptors()

Hiermee wist u de verzameling PropertyDescriptor objecten op de bijbehorende DbConnectionStringBuilder.

(Overgenomen van DbConnectionStringBuilder)
ContainsKey(String)

Bepaalt of de OdbcConnectionStringBuilder sleutel een specifieke sleutel bevat.

Equals(Object)

Bepaalt of het opgegeven object gelijk is aan het huidige object.

(Overgenomen van Object)
EquivalentTo(DbConnectionStringBuilder)

Vergelijkt de verbindingsgegevens in dit DbConnectionStringBuilder object met de verbindingsgegevens in het opgegeven object.

(Overgenomen van DbConnectionStringBuilder)
GetHashCode()

Fungeert als de standaardhashfunctie.

(Overgenomen van Object)
GetProperties(Hashtable)

Vult een opgegeven Hashtable met informatie over alle eigenschappen van deze DbConnectionStringBuilder.

(Overgenomen van DbConnectionStringBuilder)
GetType()

Hiermee haalt u de Type huidige instantie op.

(Overgenomen van Object)
MemberwiseClone()

Hiermee maakt u een ondiepe kopie van de huidige Object.

(Overgenomen van Object)
Remove(String)

Hiermee verwijdert u de vermelding met de opgegeven sleutel uit het OdbcConnectionStringBuilder exemplaar.

ShouldSerialize(String)

Geeft aan of de opgegeven sleutel bestaat in dit DbConnectionStringBuilder exemplaar.

(Overgenomen van DbConnectionStringBuilder)
ToString()

Retourneert de verbindingsreeks die aan deze DbConnectionStringBuilder zijn gekoppeld.

(Overgenomen van DbConnectionStringBuilder)
TryGetValue(String, Object)

Hiermee haalt u een waarde op die overeenkomt met de opgegeven sleutel.OdbcConnectionStringBuilder

Expliciete interface-implementaties

Name Description
ICollection.CopyTo(Array, Int32)

Kopieert de elementen van de ICollection elementen naar een Array, beginnend bij een bepaalde Array index.

(Overgenomen van DbConnectionStringBuilder)
ICollection.IsSynchronized

Hiermee wordt een waarde opgehaald die aangeeft of de toegang tot de ICollection synchronisatie is gesynchroniseerd (thread safe).

(Overgenomen van DbConnectionStringBuilder)
ICollection.SyncRoot

Hiermee haalt u een object op dat kan worden gebruikt om de toegang tot het ICollectionobject te synchroniseren.

(Overgenomen van DbConnectionStringBuilder)
ICustomTypeDescriptor.GetAttributes()

Retourneert een verzameling aangepaste kenmerken voor dit exemplaar van een onderdeel.

(Overgenomen van DbConnectionStringBuilder)
ICustomTypeDescriptor.GetClassName()

Retourneert de klassenaam van dit exemplaar van een onderdeel.

(Overgenomen van DbConnectionStringBuilder)
ICustomTypeDescriptor.GetComponentName()

Retourneert de naam van dit exemplaar van een onderdeel.

(Overgenomen van DbConnectionStringBuilder)
ICustomTypeDescriptor.GetConverter()

Retourneert een typeconversieprogramma voor dit exemplaar van een onderdeel.

(Overgenomen van DbConnectionStringBuilder)
ICustomTypeDescriptor.GetDefaultEvent()

Retourneert de standaard gebeurtenis voor dit exemplaar van een onderdeel.

(Overgenomen van DbConnectionStringBuilder)
ICustomTypeDescriptor.GetDefaultProperty()

Retourneert de standaardeigenschap voor dit exemplaar van een onderdeel.

(Overgenomen van DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEditor(Type)

Retourneert een editor van het opgegeven type voor dit exemplaar van een onderdeel.

(Overgenomen van DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEvents()

Retourneert de gebeurtenissen voor dit exemplaar van een onderdeel.

(Overgenomen van DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEvents(Attribute[])

Retourneert de gebeurtenissen voor dit exemplaar van een onderdeel met behulp van de opgegeven kenmerkmatrix als filter.

(Overgenomen van DbConnectionStringBuilder)
ICustomTypeDescriptor.GetProperties()

Retourneert de eigenschappen voor dit exemplaar van een onderdeel.

(Overgenomen van DbConnectionStringBuilder)
ICustomTypeDescriptor.GetProperties(Attribute[])

Retourneert de eigenschappen voor dit exemplaar van een onderdeel met behulp van de kenmerkmatrix als filter.

(Overgenomen van DbConnectionStringBuilder)
ICustomTypeDescriptor.GetPropertyOwner(PropertyDescriptor)

Retourneert een object dat de eigenschap bevat die wordt beschreven door de opgegeven eigenschapsdescriptor.

(Overgenomen van DbConnectionStringBuilder)
IDictionary.Add(Object, Object)

Voegt een element met de opgegeven sleutel en waarde toe aan het IDictionary object.

(Overgenomen van DbConnectionStringBuilder)
IDictionary.Contains(Object)

Bepaalt of het IDictionary object een element met de opgegeven sleutel bevat.

(Overgenomen van DbConnectionStringBuilder)
IDictionary.GetEnumerator()

Retourneert een IDictionaryEnumerator object voor het IDictionary object.

(Overgenomen van DbConnectionStringBuilder)
IDictionary.Item[Object]

Hiermee haalt u het element op of stelt u het in met de opgegeven sleutel.

(Overgenomen van DbConnectionStringBuilder)
IDictionary.Remove(Object)

Hiermee verwijdert u het element met de opgegeven sleutel uit het IDictionary object.

(Overgenomen van DbConnectionStringBuilder)
IEnumerable.GetEnumerator()

Retourneert een enumerator die door een verzameling wordt herhaald.

(Overgenomen van DbConnectionStringBuilder)

Extensiemethoden

Name Description
AsParallel(IEnumerable)

Hiermee schakelt u parallelle uitvoering van een query in.

AsQueryable(IEnumerable)

Converteert een IEnumerable naar een IQueryable.

Cast<TResult>(IEnumerable)

Cast de elementen van een IEnumerable naar het opgegeven type.

OfType<TResult>(IEnumerable)

Hiermee filtert u de elementen van een IEnumerable op basis van een opgegeven type.

Van toepassing op

Zie ook