OdbcConnectionStringBuilder Classe

Définition

Fournit un moyen simple de créer et de gérer le contenu de chaînes de connexion utilisées par la classe OdbcConnection.Provides a simple way to create and manage the contents of connection strings used by the OdbcConnection class.

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
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.The following console application builds connection strings for several ODBC databases. Tout d’abord, l’exemple crée une chaîne de connexion pour une base de données Microsoft Access.First, the example creates a connection string for a Microsoft Access database. Il crée ensuite une chaîne de connexion pour une base de données IBM DB2.It then creates a connection string for an IBM DB2 database. L’exemple analyse également une chaîne de connexion existante et illustre les différentes façons de manipuler le contenu de la chaîne de connexion.The example also parses an existing connection string, and demonstrates various ways of manipulating the contents of the connection string.

Notes

Cet exemple inclut un mot de passe pour illustrer l'utilisation de OdbcConnectionStringBuilder avec les chaînes de connexion.This example includes a password to demonstrate how OdbcConnectionStringBuilder works with connection strings. Dans vos applications, nous vous recommandons d'utiliser l'authentification Windows.In your applications, we recommend that you use Windows Authentication. Si vous devez utiliser un mot de passe, n'incluez pas de mot de passe codé en dur dans votre application.If you must use a password, do not include a hard-coded password in your application.

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

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 syntaxiquement, et d’analyser et de régénérer des chaînes de connexion existantes, à l’aide de propriétés et de méthodes de la classe.The connection string builders let developers programmatically create syntactically correct connection strings, and parse and rebuild existing connection strings, using properties and methods of the class. 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.The connection string builder provides strongly typed properties corresponding to the known key/value pairs allowed by ODBC connections, and developers can add arbitrary key/value pairs for any other connection string values.

Les développeurs ayant besoin de créer des chaînes de connexion dans le cadre d'applications peuvent utiliser la classe OdbcConnectionStringBuilder pour générer et modifier des chaînes de connexion.Developers needing to create connection strings as part of applications can use the OdbcConnectionStringBuilder class to build and modify connection strings. Cette classe permet également de gérer facilement les chaînes de connexion stockées dans un fichier de configuration de l'application.The class also makes it easy to manage connection strings stored in an application configuration file. OdbcConnectionStringBuilder effectue des vérifications uniquement pour l’ensemble limité de paires clé/valeur connues.OdbcConnectionStringBuilder performs checks only for the limited set of known key/value pairs. Par conséquent, cette classe peut être utilisée pour créer des chaînes de connexion non valides.Therefore, this class can be used to create invalid connection strings. Le tableau suivant répertorie les clés connues spécifiques ainsi que leurs propriétés correspondantes dans la classe OdbcConnectionStringBuilder, ainsi que leurs valeurs par défaut.The following table lists the specific known keys together with their corresponding properties within the OdbcConnectionStringBuilder class, and their default values. Outre ces valeurs spécifiques, les développeurs peuvent ajouter n’importe quelle paire clé/valeur à la collection contenue dans l’instance OdbcConnectionStringBuilder.Besides these specific values, developers can add any key/value pairs to the collection that is contained within the OdbcConnectionStringBuilder instance.

CléKey PropriétéProperty CommentaireComment Valeur par défautDefault value
PiloteDriver Driver Les développeurs ne doivent pas inclure les accolades entourant le nom du pilote lorsqu’ils définissent la propriété Driver.Developers should not include the braces surrounding the driver name when they set the Driver property. L’instance OdbcConnectionStringBuilder ajoute des accolades si nécessaire.The OdbcConnectionStringBuilder instance adds braces as needed. Chaîne videEmpty string
DSNDSN Dsn Chaîne videEmpty string

Si une valeur (autre que la valeur Driver) dans la chaîne de connexion contient un point-virgule (;), le OdbcConnectionStringBuilder entoure la valeur de guillemets dans la chaîne de connexion.If any value (other than the Driver value) within the connection string contains a semicolon (;), the OdbcConnectionStringBuilder surrounds the value with quotation marks in the connection string. Afin d’éviter ce problème avec la valeur Driver qui contient fréquemment un point-virgule, la classe OdbcConnectionStringBuilder entoure toujours cette valeur avec des accolades.In order to avoid this issue with the Driver value that frequently contains a semicolon, the OdbcConnectionStringBuilder class always surrounds this value with braces. La spécification ODBC indique que les valeurs de pilote qui contiennent des points-virgules doivent être placées entre accolades, et que cette classe gère cela pour vous.The ODBC specification indicates that driver values that contain semicolons must be surrounded with braces, and this class handles this for you.

La propriété Item[String] gère les tentatives d’insertion de code malveillant.The Item[String] property handles attempts to insert malicious code. Par exemple, le code suivant, à l’aide de la propriété Item[String] par défaut (l' C#indexeur, dans) échappe correctement à la paire clé/valeur imbriquée.For example, the following code, using the default Item[String] property (the indexer, in C#) correctly escapes the nested key/value pair.

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.The result is the following connection string that handles the invalid value in a safe manner:

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

Constructeurs

OdbcConnectionStringBuilder()

Initialise une nouvelle instance de la classe OdbcConnectionStringBuilder.Initializes a new instance of the OdbcConnectionStringBuilder class.

OdbcConnectionStringBuilder(String)

Initialise une nouvelle instance de la classe OdbcConnectionStringBuilder.Initializes a new instance of the OdbcConnectionStringBuilder class. La chaîne de connexion spécifiée fournit les données pour les informations de connexion internes de l'instance.The provided connection string provides the data for the instance's internal connection information.

Propriétés

BrowsableConnectionString

Obtient ou définit une valeur qui indique si la propriété ConnectionString est visible dans les concepteurs Visual Studio.Gets or sets a value that indicates whether the ConnectionString property is visible in Visual Studio designers.

(Hérité de DbConnectionStringBuilder)
ConnectionString

Obtient ou définit la chaîne de connexion associée au DbConnectionStringBuilder.Gets or sets the connection string associated with the DbConnectionStringBuilder.

(Hérité de DbConnectionStringBuilder)
Count

Obtient le nombre actuel de clés contenues dans la propriété ConnectionString.Gets the current number of keys that are contained within the ConnectionString property.

(Hérité de DbConnectionStringBuilder)
Driver

Obtient ou définit le nom du pilote ODBC associé à la connexion.Gets or sets the name of the ODBC driver associated with the connection.

Dsn

Obtient ou définit le nom de source de données (DSN) associé à la connexion.Gets or sets the name of the data source name (DSN) associated with the connection.

IsFixedSize

Obtient une valeur qui indique si DbConnectionStringBuilder est de taille fixe.Gets a value that indicates whether the DbConnectionStringBuilder has a fixed size.

(Hérité de DbConnectionStringBuilder)
IsReadOnly

Obtient une valeur qui indique si l’objet DbConnectionStringBuilder est en lecture seule.Gets a value that indicates whether the DbConnectionStringBuilder is read-only.

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

Obtient ou définit la valeur associée à la clé spécifiée.Gets or sets the value associated with the specified key. En C#, cette propriété est l'indexeur.In C#, this property is the indexer.

Keys

Obtient un ICollection qui contient les clés de OdbcConnectionStringBuilder.Gets an ICollection that contains the keys in the OdbcConnectionStringBuilder.

Values

Obtient un objet ICollection qui contient les valeurs de l'objet DbConnectionStringBuilder.Gets an ICollection that contains the values in the DbConnectionStringBuilder.

(Hérité de DbConnectionStringBuilder)

Méthodes

Add(String, Object)

Ajoute une entrée avec la clé et la valeur spécifiées dans DbConnectionStringBuilder.Adds an entry with the specified key and value into the DbConnectionStringBuilder.

(Hérité de DbConnectionStringBuilder)
Clear()

Efface le contenu de l'instance OdbcConnectionStringBuilder.Clears the contents of the OdbcConnectionStringBuilder instance.

ClearPropertyDescriptors()

Efface la collection d’objets PropertyDescriptor du DbConnectionStringBuilder associé.Clears the collection of PropertyDescriptor objects on the associated DbConnectionStringBuilder.

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

Détermine si OdbcConnectionStringBuilder contient une clé spécifique.Determines whether the OdbcConnectionStringBuilder contains a specific key.

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.Determines whether the specified object is equal to the current object.

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

Compare les informations de connexion de cet objet DbConnectionStringBuilder avec les informations de connexion de l’objet fourni.Compares the connection information in this DbConnectionStringBuilder object with the connection information in the supplied object.

(Hérité de DbConnectionStringBuilder)
GetHashCode()

Sert de fonction de hachage par défaut.Serves as the default hash function.

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

Remplit un Hashtable fourni avec des informations sur toutes les propriétés de ce DbConnectionStringBuilder.Fills a supplied Hashtable with information about all the properties of this DbConnectionStringBuilder.

(Hérité de DbConnectionStringBuilder)
GetType()

Obtient le Type de l'instance actuelle.Gets the Type of the current instance.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Object actuel.Creates a shallow copy of the current Object.

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

Supprime l'entrée contenant la clé spécifiée dans l'instance de OdbcConnectionStringBuilder.Removes the entry with the specified key from the OdbcConnectionStringBuilder instance.

ShouldSerialize(String)

Indique si la clé spécifiée existe dans cette instance de DbConnectionStringBuilder.Indicates whether the specified key exists in this DbConnectionStringBuilder instance.

(Hérité de DbConnectionStringBuilder)
ToString()

Retourne la chaîne de connexion associée à ce DbConnectionStringBuilder.Returns the connection string associated with this DbConnectionStringBuilder.

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

Récupère une valeur correspondant à la clé fournie à partir de cet objet OdbcConnectionStringBuilder.Retrieves a value corresponding to the supplied key from this OdbcConnectionStringBuilder.

Implémentations d’interfaces explicites

ICollection.CopyTo(Array, Int32)

Copie les éléments de ICollection dans Array, à partir d'un index particulier de Array.Copies the elements of the ICollection to an Array, starting at a particular Array index.

(Hérité de DbConnectionStringBuilder)
ICollection.IsSynchronized

Obtient une valeur indiquant si l’accès à ICollection est synchronisé (thread-safe).Gets a value indicating whether access to the ICollection is synchronized (thread safe).

(Hérité de DbConnectionStringBuilder)
ICollection.SyncRoot

Obtient un objet qui peut être utilisé pour synchroniser l’accès à ICollection.Gets an object that can be used to synchronize access to the ICollection.

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

Retourne une collection d’attributs personnalisés pour cette instance d’un composant.Returns a collection of custom attributes for this instance of a component.

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

Retourne le nom de classe de cette instance d’un composant.Returns the class name of this instance of a component.

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

Retourne le nom de cette instance d’un composant.Returns the name of this instance of a component.

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

Retourne un convertisseur de type pour cette instance d’un composant.Returns a type converter for this instance of a component.

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

Retourne l’événement par défaut pour cette instance d’un composant.Returns the default event for this instance of a component.

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

Retourne la propriété par défaut pour cette instance d’un composant.Returns the default property for this instance of a component.

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

Retourne un éditeur du type spécifié pour cette instance d’un composant.Returns an editor of the specified type for this instance of a component.

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

Retourne les événements pour cette instance d’un composant.Returns the events for this instance of a component.

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

Retourne les événements pour cette instance d’un composant à l’aide du tableau d’attributs spécifié comme filtre.Returns the events for this instance of a component using the specified attribute array as a filter.

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

Retourne les propriétés pour cette instance d’un composant.Returns the properties for this instance of a component.

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

Retourne les propriétés de cette instance d’un composant à l’aide du tableau d’attributs comme filtre.Returns the properties for this instance of a component using the attribute array as a filter.

(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é.Returns an object that contains the property described by the specified property descriptor.

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

Ajoute un élément avec la clé et la valeur fournies à l'objet IDictionary.Adds an element with the provided key and value to the IDictionary object.

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

Détermine si l'objet IDictionary contient un élément avec la clé spécifiée.Determines whether the IDictionary object contains an element with the specified key.

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

Retourne un objet IDictionaryEnumerator pour l’objet IDictionary.Returns an IDictionaryEnumerator object for the IDictionary object.

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

Obtient ou définit l'élément à l'aide de la clé spécifiée.Gets or sets the element with the specified key.

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

Supprime de l’objet IDictionary l’élément ayant la clé spécifiée.Removes the element with the specified key from the IDictionary object.

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

Retourne un énumérateur qui itère au sein d’une collection.Returns an enumerator that iterates through a collection.

(Hérité de DbConnectionStringBuilder)

Méthodes d’extension

Cast<TResult>(IEnumerable)

Effectue un cast des éléments d'un IEnumerable vers le type spécifié.Casts the elements of an IEnumerable to the specified type.

OfType<TResult>(IEnumerable)

Filtre les éléments d'un IEnumerable en fonction du type spécifié.Filters the elements of an IEnumerable based on a specified type.

AsParallel(IEnumerable)

Active la parallélisation d'une requête.Enables parallelization of a query.

AsQueryable(IEnumerable)

Convertit un IEnumerable en IQueryable.Converts an IEnumerable to an IQueryable.

S’applique à

Voir aussi