OleDbConnectionStringBuilder Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Fournit un moyen simple de créer et de gérer le contenu des chaînes de connexion utilisées par la classe OleDbConnection.
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
- Héritage
- Attributs
Exemples
L’application console suivante génère des chaînes de connexion pour plusieurs bases de données OLE DB. Tout d’abord, l’exemple crée une chaîne de connexion pour une base de données Microsoft Access, puis crée un 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.
Note
Cet exemple inclut un mot de passe pour illustrer le OleDbConnectionStringBuilder fonctionnement des chaînes de connexion. Dans vos applications, nous vous recommandons d’utiliser l’authentification Windows. Si vous devez utiliser un mot de passe, n’incluez pas de mot de passe codé en dur dans votre application.
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 = "..."
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
Remarques
Le générateur de chaînes de connexion permet 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 chaîne de connexion fournit des propriétés fortement typées correspondant aux paires clé/valeur connues autorisées par les connexions OLE DB, et les développeurs peuvent ajouter des paires clé/valeur arbitraires pour toutes les autres valeurs chaîne de connexion. La classe OleDbConnectionStringBuilder implémente l’interface ICustomTypeDescriptor. Cela signifie que la classe fonctionne avec Visual Studio .NET concepteurs au moment du design. Lorsque les développeurs utilisent le concepteur pour générer des DataSets fortement typés et des connexions fortement typées dans Visual Studio .NET, la classe de générateur chaîne de connexion fortement typée affiche les propriétés associées à son type et dispose également de convertisseurs qui peuvent mapper des valeurs communes pour les clés connues.
Les développeurs qui ont besoin de créer des chaînes de connexion dans le cadre d’applications peuvent utiliser la OleDbConnectionStringBuilder 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. L’exécution OleDbConnectionStringBuilder vérifie uniquement 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 et leurs propriétés correspondantes dans la OleDbConnectionStringBuilder classe, ainsi que 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 OleDbConnectionStringBuilder :
| Clé | Propriété | Valeur par défaut |
|---|---|---|
| Nom de fichier | FileName | "" |
| Provider | Provider | "" |
| Source de données | DataSource | "" |
| Conserver les informations de sécurité | PersistSecurityInfo | Faux |
| OLE DB Services | OleDbServices | -13 |
La propriété Item[] gère les tentatives d’insertion d’entrées malveillantes. Par exemple, le code suivant, à l’aide de la propriété Item[] par défaut (l’indexeur, en C#) échappe correctement la paire clé/valeur imbriquée :
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";
Le résultat est la chaîne de connexion suivante qui gère la valeur non valide de manière sécurisée :
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Sample.mdb;User ID="Admin;NewValue=Bad"
Constructeurs
| Nom | Description |
|---|---|
| OleDbConnectionStringBuilder() |
Initialise une nouvelle instance de la classe OleDbConnectionStringBuilder. |
| OleDbConnectionStringBuilder(String) |
Initialise une nouvelle instance de la classe OleDbConnectionStringBuilder. 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 propriété ConnectionString est visible dans Visual Studio concepteurs. (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) |
| DataSource |
Obtient ou définit le nom de la source de données à laquelle se connecter. |
| FileName |
Obtient ou définit le nom du fichier UDL (Universal Data Link) pour la connexion à la source de données. |
| 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 OleDbConnectionStringBuilder. |
| OleDbServices |
Obtient ou définit la valeur à passer pour la clé OLE DB Services dans la chaîne de connexion. |
| PersistSecurityInfo |
Obtient ou définit une valeur booléenne qui indique si des informations sensibles à la sécurité, telles que le mot de passe, sont retournées dans le cadre de la connexion si la connexion est ouverte ou n’a jamais été dans un état ouvert. |
| Provider |
Obtient ou définit une chaîne qui contient le nom du fournisseur de données associé à la chaîne de connexion interne. |
| 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 OleDbConnectionStringBuilder . |
| ClearPropertyDescriptors() |
Efface la collection d’objets PropertyDescriptor sur l’objet associé DbConnectionStringBuilder. (Hérité de DbConnectionStringBuilder) |
| ContainsKey(String) |
Détermine si le OleDbConnectionStringBuilder 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 OleDbConnectionStringBuilder . |
| ShouldSerialize(String) |
Indique si la clé spécifiée existe dans cette DbConnectionStringBuilder instance. (Hérité de DbConnectionStringBuilder) |
| ToString() |
Retourne le chaîne de connexion associé à ce DbConnectionStringBuilder. (Hérité de DbConnectionStringBuilder) |
| TryGetValue(String, Object) |
Récupère une valeur correspondant à la clé fournie de l’instance OleDbConnectionStringBuilder . |
Implémentations d’interfaces explicites
| Nom | Description |
|---|---|
| ICollection.CopyTo(Array, Int32) |
Copie les éléments du ICollection dans un Array, en commençant à un index Array particulier. (Hérité de DbConnectionStringBuilder) |
| ICollection.IsSynchronized |
Obtient une valeur indiquant si l’accès au ICollection est synchronisé (thread safe). (Hérité de DbConnectionStringBuilder) |
| ICollection.SyncRoot |
Obtient un objet qui peut être utilisé pour synchroniser l’accès au ICollection. (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é. |