OleDbConnectionStringBuilder Clase

Definición

Proporciona una manera sencilla de crear y administrar el contenido de las cadenas de conexión usadas por la clase 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
Herencia
OleDbConnectionStringBuilder
Atributos

Ejemplos

La siguiente aplicación de consola compila cadenas de conexión para varias bases de datos OLE DB. En primer lugar, el ejemplo crea un cadena de conexión para una base de datos de Microsoft Access y, a continuación, crea un cadena de conexión para una base de datos IBM DB2. En el ejemplo también se analiza una cadena de conexión existente y se muestran varias formas de manipular el contenido de la cadena de conexión.

Note

En este ejemplo se incluye una contraseña para demostrar cómo OleDbConnectionStringBuilder funciona con cadenas de conexión. En las aplicaciones, se recomienda usar la autenticación de Windows. Si debe usar una contraseña, no incluya una contraseña codificada de forma rígida en la aplicación.

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

Comentarios

El generador de cadenas de conexión permite a los desarrolladores crear mediante programación cadenas de conexión sintácticas correctas y analizar y recompilar las cadenas de conexión existentes mediante propiedades y métodos de la clase . El generador de cadena de conexión proporciona propiedades fuertemente tipadas correspondientes a los pares clave-valor conocidos permitidos por las conexiones OLE DB, y los desarrolladores pueden agregar pares clave-valor arbitrarios para cualquier otro valor de cadena de conexión. La clase OleDbConnectionStringBuilder implementa la interfaz ICustomTypeDescriptor. Esto significa que la clase funciona con Visual Studio .NET diseñadores en tiempo de diseño. Cuando los desarrolladores usan el diseñador para crear conjuntos de datos fuertemente tipados y conexiones fuertemente tipadas dentro de Visual Studio .NET, la clase de generador de cadena de conexión fuertemente tipada mostrará las propiedades asociadas con su tipo y también tendrá convertidores que pueden asignar valores comunes para claves conocidas.

Los desarrolladores que necesitan crear cadenas de conexión como parte de las aplicaciones pueden usar la OleDbConnectionStringBuilder clase para compilar y modificar cadenas de conexión. La clase también facilita la administración de cadenas de conexión almacenadas en un archivo de configuración de aplicación. Realiza OleDbConnectionStringBuilder comprobaciones solo para el conjunto limitado de pares clave-valor conocidos. Por lo tanto, esta clase se puede usar para crear cadenas de conexión no válidas. En la tabla siguiente se enumeran las claves conocidas y sus propiedades correspondientes dentro de la OleDbConnectionStringBuilder clase y sus valores predeterminados. Además de estos valores específicos, los desarrolladores pueden agregar cualquier par clave-valor a la colección contenida en la OleDbConnectionStringBuilder instancia:

Key Propiedad Valor predeterminado
Nombre de archivo FileName ""
Provider Provider ""
Origen de datos DataSource ""
Conservar información de seguridad PersistSecurityInfo Falso
Servicios OLE DB OleDbServices -13

La propiedad Item[] controla los intentos de insertar entradas malintencionadas. Por ejemplo, el código siguiente, con la propiedad Item[] predeterminada (el indizador, en C#) escapa correctamente al par clave-valor anidado:

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

El resultado es la siguiente cadena de conexión que controla el valor no válido de forma segura:

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

Constructores

Nombre Description
OleDbConnectionStringBuilder()

Inicializa una nueva instancia de la clase OleDbConnectionStringBuilder.

OleDbConnectionStringBuilder(String)

Inicializa una nueva instancia de la clase OleDbConnectionStringBuilder. La cadena de conexión proporcionada proporciona los datos para la información de conexión interna de la instancia.

Propiedades

Nombre Description
BrowsableConnectionString

Obtiene o establece un valor que indica si la propiedad ConnectionString está visible en Visual Studio diseñadores.

(Heredado de DbConnectionStringBuilder)
ConnectionString

Obtiene o establece el cadena de conexión asociado al DbConnectionStringBuilder.

(Heredado de DbConnectionStringBuilder)
Count

Obtiene el número actual de claves contenidas en la ConnectionString propiedad .

(Heredado de DbConnectionStringBuilder)
DataSource

Obtiene o establece el nombre del origen de datos al que se va a conectar.

FileName

Obtiene o establece el nombre del archivo de vínculo de datos universal (UDL) para conectarse al origen de datos.

IsFixedSize

Obtiene un valor que indica si DbConnectionStringBuilder tiene un tamaño fijo.

(Heredado de DbConnectionStringBuilder)
IsReadOnly

Obtiene un valor que indica si es DbConnectionStringBuilder de solo lectura.

(Heredado de DbConnectionStringBuilder)
Item[String]

Obtiene o establece el valor asociado a la clave especificada. En C#, esta propiedad es el indexador.

Keys

Obtiene un ICollection objeto que contiene las claves de .OleDbConnectionStringBuilder

OleDbServices

Obtiene o establece el valor que se va a pasar para la clave de servicios OLE DB dentro de la cadena de conexión.

PersistSecurityInfo

Obtiene o establece un valor booleano que indica si la información confidencial de seguridad, como la contraseña, se devuelve como parte de la conexión si la conexión está abierta o alguna vez está en un estado abierto.

Provider

Obtiene o establece una cadena que contiene el nombre del proveedor de datos asociado a la cadena de conexión interna.

Values

Obtiene un ICollection objeto que contiene los valores de .DbConnectionStringBuilder

(Heredado de DbConnectionStringBuilder)

Métodos

Nombre Description
Add(String, Object)

Agrega una entrada con la clave y el valor especificados en .DbConnectionStringBuilder

(Heredado de DbConnectionStringBuilder)
Clear()

Borra el contenido de la OleDbConnectionStringBuilder instancia.

ClearPropertyDescriptors()

Borra la colección de PropertyDescriptor objetos en el objeto asociado DbConnectionStringBuilder.

(Heredado de DbConnectionStringBuilder)
ContainsKey(String)

Determina si el OleDbConnectionStringBuilder contiene una clave específica.

Equals(Object)

Determina si el objeto especificado es igual al objeto actual.

(Heredado de Object)
EquivalentTo(DbConnectionStringBuilder)

Compara la información de conexión de este DbConnectionStringBuilder objeto con la información de conexión del objeto proporcionado.

(Heredado de DbConnectionStringBuilder)
GetHashCode()

Actúa como la función hash predeterminada.

(Heredado de Object)
GetProperties(Hashtable)

Rellena un proporcionado Hashtable con información sobre todas las propiedades de este DbConnectionStringBuilder.

(Heredado de DbConnectionStringBuilder)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del Objectactual.

(Heredado de Object)
Remove(String)

Quita la entrada con la clave especificada de la OleDbConnectionStringBuilder instancia.

ShouldSerialize(String)

Indica si la clave especificada existe en esta DbConnectionStringBuilder instancia.

(Heredado de DbConnectionStringBuilder)
ToString()

Devuelve el cadena de conexión asociado a este DbConnectionStringBuilder.

(Heredado de DbConnectionStringBuilder)
TryGetValue(String, Object)

Recupera un valor correspondiente a la clave proporcionada de la OleDbConnectionStringBuilder instancia.

Implementaciones de interfaz explícitas

Nombre Description
ICollection.CopyTo(Array, Int32)

Copia los elementos del ICollection en un Array, empezando por un índice de Array determinado.

(Heredado de DbConnectionStringBuilder)
ICollection.IsSynchronized

Obtiene un valor que indica si el acceso a ICollection está sincronizado (seguro para subprocesos).

(Heredado de DbConnectionStringBuilder)
ICollection.SyncRoot

Obtiene un objeto que se puede usar para sincronizar el acceso a la ICollection.

(Heredado de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetAttributes()

Devuelve una colección de atributos personalizados para esta instancia de un componente.

(Heredado de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetClassName()

Devuelve el nombre de clase de esta instancia de un componente.

(Heredado de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetComponentName()

Devuelve el nombre de esta instancia de un componente.

(Heredado de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetConverter()

Devuelve un convertidor de tipos para esta instancia de un componente.

(Heredado de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetDefaultEvent()

Devuelve el evento predeterminado para esta instancia de un componente.

(Heredado de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetDefaultProperty()

Devuelve la propiedad predeterminada para esta instancia de un componente.

(Heredado de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEditor(Type)

Devuelve un editor del tipo especificado para esta instancia de un componente.

(Heredado de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEvents()

Devuelve los eventos de esta instancia de un componente.

(Heredado de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEvents(Attribute[])

Devuelve los eventos de esta instancia de un componente mediante la matriz de atributos especificada como filtro.

(Heredado de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetProperties()

Devuelve las propiedades de esta instancia de un componente.

(Heredado de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetProperties(Attribute[])

Devuelve las propiedades de esta instancia de un componente mediante la matriz de atributos como filtro.

(Heredado de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetPropertyOwner(PropertyDescriptor)

Devuelve un objeto que contiene la propiedad descrita por el descriptor de propiedad especificado.

(Heredado de DbConnectionStringBuilder)
IDictionary.Add(Object, Object)

Agrega un elemento con la clave y el valor proporcionados al IDictionary objeto .

(Heredado de DbConnectionStringBuilder)
IDictionary.Contains(Object)

Determina si el IDictionary objeto contiene un elemento con la clave especificada.

(Heredado de DbConnectionStringBuilder)
IDictionary.GetEnumerator()

Devuelve un IDictionaryEnumerator objeto para el IDictionary objeto .

(Heredado de DbConnectionStringBuilder)
IDictionary.Item[Object]

Obtiene o establece el elemento con la clave especificada.

(Heredado de DbConnectionStringBuilder)
IDictionary.Remove(Object)

Quita el elemento con la clave especificada del IDictionary objeto .

(Heredado de DbConnectionStringBuilder)
IEnumerable.GetEnumerator()

Devuelve un enumerador que recorre en iteración una colección.

(Heredado de DbConnectionStringBuilder)

Métodos de extensión

Nombre Description
AsParallel(IEnumerable)

Habilita la paralelización de una consulta.

AsQueryable(IEnumerable)

Convierte un IEnumerable en un IQueryable.

Cast<TResult>(IEnumerable)

Convierte los elementos de un IEnumerable al tipo especificado.

OfType<TResult>(IEnumerable)

Filtra los elementos de un IEnumerable en función de un tipo especificado.

Se aplica a

Consulte también