OdbcConnectionStringBuilder Clase

Definición

Proporciona una manera simple de crear y administrar el contenido de las cadenas de conexión que utiliza la clase 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
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
Herencia
OdbcConnectionStringBuilder
Atributos

Ejemplos

La siguiente aplicación de consola crea cadenas de conexión para varias bases de datos ODBC.The following console application builds connection strings for several ODBC databases. En primer lugar, en el ejemplo se crea una cadena de conexión para una base de datos de Microsoft Access.First, the example creates a connection string for a Microsoft Access database. A continuación, crea una cadena de conexión para una base de datos IBM DB2.It then creates a connection string for an IBM DB2 database. En el ejemplo también se analiza una cadena de conexión existente y se muestran varias maneras de manipular el contenido de la cadena de conexión.The example also parses an existing connection string, and demonstrates various ways of manipulating the contents of the connection string.

Nota

Este ejempo incluye una contraseña para demostrar cómo OdbcConnectionStringBuilder funciona con cadenas de conexión.This example includes a password to demonstrate how OdbcConnectionStringBuilder works with connection strings. Se recomienda que utilice autenticación de Windows en sus aplicaciones.In your applications, we recommend that you use Windows Authentication. Si necesita utilizar una contraseña en su aplicación, no incluya una contraseña codificada de forma rígida.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

Comentarios

Los generadores de cadenas de conexión permiten a los desarrolladores crear mediante programación cadenas de conexión sintácticamente correctas, y analizar y volver a generar cadenas de conexión existentes, utilizando las propiedades y los métodos de la clase.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. El generador de cadenas de conexión proporciona propiedades fuertemente tipadas que corresponden a los pares clave-valor conocidos permitidos por las conexiones ODBC, y los desarrolladores pueden agregar pares de clave/valor arbitrarios para cualquier otro valor de cadena de conexión.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.

Los programadores que tengan que crear cadenas de conexión como parte de las aplicaciones pueden utilizar la clase OdbcConnectionStringBuilder para generarlas y modificarlas.Developers needing to create connection strings as part of applications can use the OdbcConnectionStringBuilder class to build and modify connection strings. La clase facilita también la administración de cadenas de conexión almacenadas en el archivo de configuración de una aplicación.The class also makes it easy to manage connection strings stored in an application configuration file. OdbcConnectionStringBuilder realiza comprobaciones solo para el conjunto limitado de pares clave-valor conocidos.OdbcConnectionStringBuilder performs checks only for the limited set of known key/value pairs. Por lo tanto, esta clase se puede usar para crear cadenas de conexión no válidas.Therefore, this class can be used to create invalid connection strings. En la tabla siguiente se enumeran las claves conocidas específicas junto con sus propiedades correspondientes dentro de la OdbcConnectionStringBuilder clase y sus valores predeterminados.The following table lists the specific known keys together with their corresponding properties within the OdbcConnectionStringBuilder class, and their default values. Además de estos valores específicos, los desarrolladores pueden agregar cualquier par clave-valor a la colección que se encuentra dentro de la OdbcConnectionStringBuilder instancia.Besides these specific values, developers can add any key/value pairs to the collection that is contained within the OdbcConnectionStringBuilder instance.

ClaveKey PropiedadProperty ComentarioComment Valor predeterminadoDefault value
ControladorDriver Driver Los desarrolladores no deben incluir las llaves que rodean el nombre del controlador cuando establecen la Driver propiedad.Developers should not include the braces surrounding the driver name when they set the Driver property. La OdbcConnectionStringBuilder instancia agrega llaves según sea necesario.The OdbcConnectionStringBuilder instance adds braces as needed. cadena vacía.Empty string
DSNDSN Dsn cadena vacía.Empty string

Si algún valor (que no sea el Driver valor) dentro de la cadena de conexión contiene un punto y coma (;), el OdbcConnectionStringBuilder encierra el valor entre comillas en la cadena de conexión.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. Con el fin de evitar este problema con el Driver valor que suele contener un punto y coma, la OdbcConnectionStringBuilder clase siempre rodea este valor con llaves.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 especificación de ODBC indica que los valores de controlador que contienen signos de punto y coma deben estar rodeados de llaves y esta clase se encarga de ello.The ODBC specification indicates that driver values that contain semicolons must be surrounded with braces, and this class handles this for you.

La Item[] propiedad controla los intentos de insertar código malintencionado.The Item[] property handles attempts to insert malicious code. Por ejemplo, en el código siguiente, el uso de la Item[] propiedad predeterminada (el indizador en C#) convierte correctamente el carácter de escape en el par de clave-valor anidado.For example, the following code, using the default Item[] 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);

El resultado es la siguiente cadena de conexión que controla el valor no válido de una manera segura:The result is the following connection string that handles the invalid value in a safe manner:

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

Constructores

OdbcConnectionStringBuilder()

Inicializa una nueva instancia de la clase OdbcConnectionStringBuilder.Initializes a new instance of the OdbcConnectionStringBuilder class.

OdbcConnectionStringBuilder(String)

Inicializa una nueva instancia de la clase OdbcConnectionStringBuilder.Initializes a new instance of the OdbcConnectionStringBuilder class. La cadena de conexión proporcionada facilita los datos para la información de conexión interna de la instancia.The provided connection string provides the data for the instance's internal connection information.

Propiedades

BrowsableConnectionString

Obtiene o establece un valor que indica si la propiedad ConnectionString está visible en los diseñadores de Visual Studio.Gets or sets a value that indicates whether the ConnectionString property is visible in Visual Studio designers.

(Heredado de DbConnectionStringBuilder)
ConnectionString

Obtiene o establece la cadena de conexión asociada con el DbConnectionStringBuilder.Gets or sets the connection string associated with the DbConnectionStringBuilder.

(Heredado de DbConnectionStringBuilder)
Count

Obtiene el número actual de claves que están dentro de la propiedad ConnectionString.Gets the current number of keys that are contained within the ConnectionString property.

(Heredado de DbConnectionStringBuilder)
Driver

Obtiene o establece el nombre del controlador ODBC asociado a la conexión.Gets or sets the name of the ODBC driver associated with the connection.

Dsn

Obtiene o establece el nombre de origen de datos (DSN) asociado a la conexión.Gets or sets the name of the data source name (DSN) associated with the connection.

IsFixedSize

Obtiene un valor que indica si el objeto DbConnectionStringBuilder tiene un tamaño fijo.Gets a value that indicates whether the DbConnectionStringBuilder has a fixed size.

(Heredado de DbConnectionStringBuilder)
IsReadOnly

Obtiene un valor que indica si DbConnectionStringBuilder es de solo lectura.Gets a value that indicates whether the DbConnectionStringBuilder is read-only.

(Heredado de DbConnectionStringBuilder)
Item[String]

Obtiene o establece el valor asociado a la clave especificada.Gets or sets the value associated with the specified key. En C#, esta propiedad es el indizador.In C#, this property is the indexer.

Keys

Obtiene una ICollection que contiene las claves de OdbcConnectionStringBuilder.Gets an ICollection that contains the keys in the OdbcConnectionStringBuilder.

Values

Obtiene un ICollection que contiene los valores de DbConnectionStringBuilder.Gets an ICollection that contains the values in the DbConnectionStringBuilder.

(Heredado de DbConnectionStringBuilder)

Métodos

Add(String, Object)

Agrega una entrada con la clave y el valor especificados a DbConnectionStringBuilder.Adds an entry with the specified key and value into the DbConnectionStringBuilder.

(Heredado de DbConnectionStringBuilder)
Clear()

Borra el contenido de la instancia de OdbcConnectionStringBuilder.Clears the contents of the OdbcConnectionStringBuilder instance.

ClearPropertyDescriptors()

Borra la colección de objetos PropertyDescriptor del DbConnectionStringBuilder asociado.Clears the collection of PropertyDescriptor objects on the associated DbConnectionStringBuilder.

(Heredado de DbConnectionStringBuilder)
ContainsKey(String)

Determina si OdbcConnectionStringBuilder contiene una clave específica.Determines whether the OdbcConnectionStringBuilder contains a specific key.

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.Determines whether the specified object is equal to the current object.

(Heredado de Object)
EquivalentTo(DbConnectionStringBuilder)

Compara la información de conexión de este objeto DbConnectionStringBuilder con la información de conexión del objeto especificado.Compares the connection information in this DbConnectionStringBuilder object with the connection information in the supplied object.

(Heredado de DbConnectionStringBuilder)
GetHashCode()

Sirve como la función hash predeterminada.Serves as the default hash function.

(Heredado de Object)
GetProperties(Hashtable)

Rellena un Hashtable proporcionado con información sobre todas las propiedades de este DbConnectionStringBuilder.Fills a supplied Hashtable with information about all the properties of this DbConnectionStringBuilder.

(Heredado de DbConnectionStringBuilder)
GetType()

Obtiene el Type de la instancia actual.Gets the Type of the current instance.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del Object actual.Creates a shallow copy of the current Object.

(Heredado de Object)
Remove(String)

Quita la entrada con la clave especificada de la instancia de OdbcConnectionStringBuilder.Removes the entry with the specified key from the OdbcConnectionStringBuilder instance.

ShouldSerialize(String)

Indica si la clave especificada existe en esta instancia de DbConnectionStringBuilder.Indicates whether the specified key exists in this DbConnectionStringBuilder instance.

(Heredado de DbConnectionStringBuilder)
ToString()

Devuelve la cadena de conexión asociada a este DbConnectionStringBuilder.Returns the connection string associated with this DbConnectionStringBuilder.

(Heredado de DbConnectionStringBuilder)
TryGetValue(String, Object)

Recupera un valor que corresponde a la clave proporcionada por este OdbcConnectionStringBuilder.Retrieves a value corresponding to the supplied key from this OdbcConnectionStringBuilder.

Implementaciones de interfaz explícitas

ICollection.CopyTo(Array, Int32)

Copia los elementos de ICollection en Array, empezando por un índice determinado de Array.Copies the elements of the ICollection to an Array, starting at a particular Array index.

(Heredado de DbConnectionStringBuilder)
ICollection.IsSynchronized

Obtiene un valor que indica si el acceso a la interfaz ICollection está sincronizado (es seguro para subprocesos).Gets a value indicating whether access to the ICollection is synchronized (thread safe).

(Heredado de DbConnectionStringBuilder)
ICollection.SyncRoot

Obtiene un objeto que se puede usar para sincronizar el acceso a ICollection.Gets an object that can be used to synchronize access to the ICollection.

(Heredado de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetAttributes()

Devuelve una colección de atributos personalizados para esta instancia de un componente.Returns a collection of custom attributes for this instance of a component.

(Heredado de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetClassName()

Devuelve el nombre de clase de esta instancia de un componente.Returns the class name of this instance of a component.

(Heredado de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetComponentName()

Devuelve los eventos para esta instancia de un componente.Returns the name of this instance of a component.

(Heredado de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetConverter()

Devuelve un convertidor de tipos para instancia de un componente.Returns a type converter for this instance of a component.

(Heredado de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetDefaultEvent()

Devuelve el evento predeterminado para esta instancia de un componente.Returns the default event for this instance of a component.

(Heredado de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetDefaultProperty()

Devuelve la propiedad predeterminada para esta instancia de un componente.Returns the default property for this instance of a component.

(Heredado de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEditor(Type)

Devuelve un editor del tipo especificado para esta instancia de un componente.Returns an editor of the specified type for this instance of a component.

(Heredado de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEvents()

Devuelve los eventos para esta instancia de un componente.Returns the events for this instance of a component.

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

Devuelve los eventos de esta instancia de un componente utilizando la matriz de atributos especificada como filtro.Returns the events for this instance of a component using the specified attribute array as a filter.

(Heredado de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetProperties()

Devuelve las propiedades para esta instancia de un componente.Returns the properties for this instance of a component.

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

Devuelve las propiedades para esta instancia de un componente usando la matriz de atributos como filtro.Returns the properties for this instance of a component using the attribute array as a filter.

(Heredado de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetPropertyOwner(PropertyDescriptor)

Devuelve un objeto que contiene la propiedad que describe el descriptor de propiedades especificado.Returns an object that contains the property described by the specified property descriptor.

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

Agrega un elemento con la clave y el valor proporcionados al objeto IDictionary.Adds an element with the provided key and value to the IDictionary object.

(Heredado de DbConnectionStringBuilder)
IDictionary.Contains(Object)

Determina si el objeto IDictionary contiene un elemento con la clave especificada.Determines whether the IDictionary object contains an element with the specified key.

(Heredado de DbConnectionStringBuilder)
IDictionary.GetEnumerator()

Devuelve un objeto IDictionaryEnumerator para el objeto IDictionary.Returns an IDictionaryEnumerator object for the IDictionary object.

(Heredado de DbConnectionStringBuilder)
IDictionary.IsFixedSize

Obtiene un valor que indica si el objeto IDictionary tiene un tamaño fijo.Gets a value indicating whether the IDictionary object has a fixed size.

(Heredado de DbConnectionStringBuilder)
IDictionary.IsReadOnly

Obtiene un valor que indica si IDictionary es de solo lectura.Gets a value indicating whether the IDictionary is read-only.

(Heredado de DbConnectionStringBuilder)
IDictionary.Item[Object]

Obtiene o establece el elemento con la clave especificada.Gets or sets the element with the specified key.

(Heredado de DbConnectionStringBuilder)
IDictionary.Remove(Object)

Quita el elemento con la clave especificada del objeto IDictionary.Removes the element with the specified key from the IDictionary object.

(Heredado de DbConnectionStringBuilder)
IEnumerable.GetEnumerator()

Devuelve un enumerador que recorre en iteración una colección.Returns an enumerator that iterates through a collection.

(Heredado de DbConnectionStringBuilder)

Métodos de extensión

Cast<TResult>(IEnumerable)

Convierte los elementos de IEnumerable en el tipo especificado.Casts the elements of an IEnumerable to the specified type.

OfType<TResult>(IEnumerable)

Filtra los elementos de IEnumerable en función de un tipo especificado.Filters the elements of an IEnumerable based on a specified type.

AsParallel(IEnumerable)

Habilita la paralelización de una consulta.Enables parallelization of a query.

AsQueryable(IEnumerable)

Convierte una interfaz IEnumerable en IQueryable.Converts an IEnumerable to an IQueryable.

Se aplica a