Partager via


OdbcConnectionStringBuilder Classe

Définition

Fournit un moyen simple de créer et de gérer le contenu des chaînes de connexion utilisées par la OdbcConnection classe.

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
Héritage
OdbcConnectionStringBuilder
Attributs

Exemples

L’application console suivante génère des chaînes de connexion pour plusieurs bases de données ODBC. Tout d’abord, l’exemple crée une chaîne de connexion pour une base de données Microsoft Access. Il crée ensuite une chaîne de connexion pour une base de données IBM DB2. L’exemple analyse également une chaîne de connexion existante et montre différentes façons de manipuler le contenu de la chaîne de connexion.

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

Remarques

Les générateurs de chaînes de connexion permettent aux développeurs de créer par programmation des chaînes de connexion correctes par programmation, d’analyser et de reconstruire des chaînes de connexion existantes, à l’aide de propriétés et de méthodes de la classe. Le générateur de chaînes de connexion fournit des propriétés fortement typées correspondant aux paires clé/valeur connues autorisées par les connexions ODBC, et les développeurs peuvent ajouter des paires clé/valeur arbitraires pour toutes les autres valeurs de chaîne de connexion.

Les développeurs qui ont besoin de créer des chaînes de connexion dans le cadre d’applications peuvent utiliser la OdbcConnectionStringBuilder classe pour générer et modifier des chaînes de connexion. La classe facilite également la gestion des chaînes de connexion stockées dans un fichier de configuration d’application. OdbcConnectionStringBuilder effectue des vérifications uniquement pour l’ensemble limité de paires clé/valeur connues. Par conséquent, cette classe peut être utilisée pour créer des chaînes de connexion non valides. Le tableau suivant répertorie les clés connues spécifiques ainsi que leurs propriétés correspondantes dans la OdbcConnectionStringBuilder classe et leurs valeurs par défaut. Outre ces valeurs spécifiques, les développeurs peuvent ajouter toutes les paires clé/valeur à la collection contenue dans l’instance OdbcConnectionStringBuilder .

Clé Propriété Commentaire Valeur par défaut
Chauffeur Driver Les développeurs ne doivent pas inclure les accolades entourant le nom du pilote lorsqu’ils définissent la Driver propriété. L’instance OdbcConnectionStringBuilder ajoute des accolades si nécessaire. Chaîne vide
DSN Dsn Chaîne vide

Si une valeur (autre que la Driver valeur) dans la chaîne de connexion contient un point-virgule (;), la OdbcConnectionStringBuilder valeur entoure la valeur avec des guillemets dans la chaîne de connexion. Pour éviter ce problème avec la Driver valeur qui contient fréquemment un point-virgule, la OdbcConnectionStringBuilder classe entoure toujours cette valeur avec des accolades. La spécification ODBC indique que les valeurs de pilote qui contiennent des points-virgules doivent être entourées d’accolades et que cette classe gère cela pour vous.

La Item[] propriété gère les tentatives d’insertion de code malveillant. Par exemple, le code suivant, à l’aide de la propriété par défaut Item[] (l’indexeur, en C#) échappe correctement la paire clé/valeur imbriquée.

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

Le résultat est la chaîne de connexion suivante qui gère la valeur non valide de manière sécurisée :

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

Constructeurs

Nom Description
OdbcConnectionStringBuilder()

Initialise une nouvelle instance de la classe OdbcConnectionStringBuilder.

OdbcConnectionStringBuilder(String)

Initialise une nouvelle instance de la classe OdbcConnectionStringBuilder. La chaîne de connexion fournie fournit les données des informations de connexion internes de l’instance.

Propriétés

Nom Description
BrowsableConnectionString

Obtient ou définit une valeur qui indique si la ConnectionString propriété est visible dans les concepteurs Visual Studio.

(Hérité de DbConnectionStringBuilder)
ConnectionString

Obtient ou définit la chaîne de connexion associée au DbConnectionStringBuilder.

(Hérité de DbConnectionStringBuilder)
Count

Obtient le nombre actuel de clés contenues dans la ConnectionString propriété.

(Hérité de DbConnectionStringBuilder)
Driver

Obtient ou définit le nom du pilote ODBC associé à la connexion.

Dsn

Obtient ou définit le nom du nom de la source de données (DSN) associé à la connexion.

IsFixedSize

Obtient une valeur qui indique si la DbConnectionStringBuilder taille fixe est définie.

(Hérité de DbConnectionStringBuilder)
IsReadOnly

Obtient une valeur qui indique si l’objet DbConnectionStringBuilder est en lecture seule.

(Hérité de DbConnectionStringBuilder)
Item[String]

Obtient ou définit la valeur associée à la clé spécifiée. En C#, cette propriété est l’indexeur.

Keys

Obtient un ICollection qui contient les clés dans le OdbcConnectionStringBuilder.

Values

Obtient un ICollection qui contient les valeurs dans le DbConnectionStringBuilder.

(Hérité de DbConnectionStringBuilder)

Méthodes

Nom Description
Add(String, Object)

Ajoute une entrée avec la clé et la valeur spécifiées dans le DbConnectionStringBuilder.

(Hérité de DbConnectionStringBuilder)
Clear()

Efface le contenu de l’instance OdbcConnectionStringBuilder .

ClearPropertyDescriptors()

Efface la collection d’objets PropertyDescriptor sur l’objet associé DbConnectionStringBuilder.

(Hérité de DbConnectionStringBuilder)
ContainsKey(String)

Détermine si le OdbcConnectionStringBuilder conteneur contient une clé spécifique.

Equals(Object)

Détermine si l’objet spécifié est égal à l’objet actuel.

(Hérité de Object)
EquivalentTo(DbConnectionStringBuilder)

Compare les informations de connexion dans cet DbConnectionStringBuilder objet avec les informations de connexion de l’objet fourni.

(Hérité de DbConnectionStringBuilder)
GetHashCode()

Sert de fonction de hachage par défaut.

(Hérité de Object)
GetProperties(Hashtable)

Remplit un fourni Hashtable avec des informations sur toutes les propriétés de ce DbConnectionStringBuilder.

(Hérité de DbConnectionStringBuilder)
GetType()

Obtient la Type de l’instance actuelle.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Objectactuel.

(Hérité de Object)
Remove(String)

Supprime l’entrée avec la clé spécifiée de l’instance OdbcConnectionStringBuilder .

ShouldSerialize(String)

Indique si la clé spécifiée existe dans cette DbConnectionStringBuilder instance.

(Hérité de DbConnectionStringBuilder)
ToString()

Retourne la chaîne de connexion associée à ce DbConnectionStringBuilder.

(Hérité de DbConnectionStringBuilder)
TryGetValue(String, Object)

Récupère une valeur correspondant à la clé fournie à partir de ce OdbcConnectionStringBuilder.

Implémentations d’interfaces explicites

Nom Description
ICollection.CopyTo(Array, Int32)

Copie les éléments d’un ICollection index particulier à partir Arrayd’un index particulier Array .

(Hérité de DbConnectionStringBuilder)
ICollection.IsSynchronized

Obtient une valeur indiquant si l’accès à l’objet ICollection est synchronisé (thread safe).

(Hérité de DbConnectionStringBuilder)
ICollection.SyncRoot

Obtient un objet qui peut être utilisé pour synchroniser l’accès ICollectionau .

(Hérité de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetAttributes()

Retourne une collection d’attributs personnalisés pour cette instance d’un composant.

(Hérité de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetClassName()

Retourne le nom de classe de cette instance d’un composant.

(Hérité de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetComponentName()

Retourne le nom de cette instance d’un composant.

(Hérité de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetConverter()

Retourne un convertisseur de type pour cette instance d’un composant.

(Hérité de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetDefaultEvent()

Retourne l’événement par défaut pour cette instance d’un composant.

(Hérité de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetDefaultProperty()

Retourne la propriété par défaut pour cette instance d’un composant.

(Hérité de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEditor(Type)

Retourne un éditeur du type spécifié pour cette instance d’un composant.

(Hérité de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEvents()

Retourne les événements de cette instance d’un composant.

(Hérité de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEvents(Attribute[])

Retourne les événements de cette instance d’un composant à l’aide du tableau d’attributs spécifié en tant que filtre.

(Hérité de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetProperties()

Retourne les propriétés de cette instance d’un composant.

(Hérité de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetProperties(Attribute[])

Retourne les propriétés de cette instance d’un composant à l’aide du tableau d’attributs en tant que filtre.

(Hérité de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetPropertyOwner(PropertyDescriptor)

Retourne un objet qui contient la propriété décrite par le descripteur de propriété spécifié.

(Hérité de DbConnectionStringBuilder)
IDictionary.Add(Object, Object)

Ajoute un élément avec la clé et la valeur fournies à l’objet IDictionary .

(Hérité de DbConnectionStringBuilder)
IDictionary.Contains(Object)

Détermine si l’objet IDictionary contient un élément avec la clé spécifiée.

(Hérité de DbConnectionStringBuilder)
IDictionary.GetEnumerator()

Retourne un IDictionaryEnumerator objet pour l’objet IDictionary .

(Hérité de DbConnectionStringBuilder)
IDictionary.Item[Object]

Obtient ou définit l’élément avec la clé spécifiée.

(Hérité de DbConnectionStringBuilder)
IDictionary.Remove(Object)

Supprime l’élément avec la clé spécifiée de l’objet IDictionary .

(Hérité de DbConnectionStringBuilder)
IEnumerable.GetEnumerator()

Retourne un énumérateur qui itère dans une collection.

(Hérité de DbConnectionStringBuilder)

Méthodes d’extension

Nom Description
AsParallel(IEnumerable)

Active la parallélisation d’une requête.

AsQueryable(IEnumerable)

Convertit un IEnumerable en IQueryable.

Cast<TResult>(IEnumerable)

Convertit les éléments d’un IEnumerable en type spécifié.

OfType<TResult>(IEnumerable)

Filtre les éléments d’une IEnumerable en fonction d’un type spécifié.

S’applique à

Voir aussi