Compartilhar via


OdbcConnectionStringBuilder Classe

Definição

Fornece uma maneira simples de criar e gerenciar o conteúdo das cadeias de conexão usadas pela 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
Herança
OdbcConnectionStringBuilder
Atributos

Exemplos

O aplicativo de console a seguir cria cadeias de conexão para vários bancos de dados ODBC. Primeiro, o exemplo cria uma cadeia de conexão para um banco de dados do Microsoft Access. Em seguida, ele cria uma cadeia de conexão para um banco de dados IBM DB2. O exemplo também analisa uma cadeia de conexão existente e demonstra várias maneiras de manipular o conteúdo da cadeia de conexão.

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

Comentários

Os construtores de cadeias de conexão permitem que os desenvolvedores criem programaticamente cadeias de conexão sintaticamente corretas e analisem e recompilem cadeias de conexão existentes, usando propriedades e métodos da classe. O construtor de cadeias de conexão fornece propriedades fortemente tipadas correspondentes aos pares chave/valor conhecidos permitidos por conexões ODBC, e os desenvolvedores podem adicionar pares de chave/valor arbitrários para quaisquer outros valores de cadeia de conexão.

Os desenvolvedores que precisam criar cadeias de conexão como parte dos aplicativos podem usar a OdbcConnectionStringBuilder classe para criar e modificar cadeias de conexão. A classe também facilita o gerenciamento de cadeias de conexão armazenadas em um arquivo de configuração de aplicativo. OdbcConnectionStringBuilder executa verificações somente para o conjunto limitado de pares chave/valor conhecidos. Portanto, essa classe pode ser usada para criar cadeias de conexão inválidas. A tabela a seguir lista as chaves conhecidas específicas junto com suas propriedades correspondentes dentro da OdbcConnectionStringBuilder classe e seus valores padrão. Além desses valores específicos, os desenvolvedores podem adicionar quaisquer pares chave/valor à coleção contida na OdbcConnectionStringBuilder instância.

Chave Propriedade Comentário Valor padrão
Motorista Driver Os desenvolvedores não devem incluir as chaves ao redor do nome do driver quando definirem a Driver propriedade. A OdbcConnectionStringBuilder instância adiciona chaves conforme necessário. Cadeia de caracteres vazia
DSN Dsn Cadeia de caracteres vazia

Se qualquer valor (diferente do Driver valor) dentro da cadeia de conexão contiver um ponto e vírgula (;), o OdbcConnectionStringBuilder valor será cercado por aspas na cadeia de conexão. Para evitar esse problema com o Driver valor que frequentemente contém um ponto e vírgula, a OdbcConnectionStringBuilder classe sempre envolve esse valor com chaves. A especificação ODBC indica que os valores de driver que contêm ponto-e-vírgula devem estar cercados de chaves, e essa classe manipula isso para você.

A Item[] propriedade manipula tentativas de inserir código mal-intencionado. Por exemplo, o código a seguir, usando a propriedade padrão Item[] (o indexador, em C#) escapa corretamente do par chave/valor aninhado.

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

O resultado é a seguinte cadeia de conexão que manipula o valor inválido de maneira segura:

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

Construtores

Nome Description
OdbcConnectionStringBuilder()

Inicializa uma nova instância da classe OdbcConnectionStringBuilder.

OdbcConnectionStringBuilder(String)

Inicializa uma nova instância da classe OdbcConnectionStringBuilder. A cadeia de conexão fornecida fornece os dados para as informações de conexão interna da instância.

Propriedades

Nome Description
BrowsableConnectionString

Obtém ou define um valor que indica se a ConnectionString propriedade está visível em designers do Visual Studio.

(Herdado de DbConnectionStringBuilder)
ConnectionString

Obtém ou define a cadeia de conexão associada ao DbConnectionStringBuilder.

(Herdado de DbConnectionStringBuilder)
Count

Obtém o número atual de chaves contidas na ConnectionString propriedade.

(Herdado de DbConnectionStringBuilder)
Driver

Obtém ou define o nome do driver ODBC associado à conexão.

Dsn

Obtém ou define o nome do DSN (nome da fonte de dados) associado à conexão.

IsFixedSize

Obtém um valor que indica se o DbConnectionStringBuilder tem um tamanho fixo.

(Herdado de DbConnectionStringBuilder)
IsReadOnly

Obtém um valor que indica se o DbConnectionStringBuilder valor é somente leitura.

(Herdado de DbConnectionStringBuilder)
Item[String]

Obtém ou define o valor associado à chave especificada. Em C#, essa propriedade é o indexador.

Keys

Obtém um ICollection que contém as chaves no OdbcConnectionStringBuilder.

Values

Obtém um ICollection que contém os valores no DbConnectionStringBuilder.

(Herdado de DbConnectionStringBuilder)

Métodos

Nome Description
Add(String, Object)

Adiciona uma entrada com a chave e o valor especificados ao DbConnectionStringBuilder.

(Herdado de DbConnectionStringBuilder)
Clear()

Limpa o conteúdo da OdbcConnectionStringBuilder instância.

ClearPropertyDescriptors()

Limpa a coleção de PropertyDescriptor objetos no associado DbConnectionStringBuilder.

(Herdado de DbConnectionStringBuilder)
ContainsKey(String)

Determina se a OdbcConnectionStringBuilder chave contém uma chave específica.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
EquivalentTo(DbConnectionStringBuilder)

Compara as informações de conexão neste DbConnectionStringBuilder objeto com as informações de conexão no objeto fornecido.

(Herdado de DbConnectionStringBuilder)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetProperties(Hashtable)

Preenche um fornecido Hashtable com informações sobre todas as propriedades deste DbConnectionStringBuilder.

(Herdado de DbConnectionStringBuilder)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do Objectatual.

(Herdado de Object)
Remove(String)

Remove a entrada com a chave especificada da OdbcConnectionStringBuilder instância.

ShouldSerialize(String)

Indica se a chave especificada existe nesta DbConnectionStringBuilder instância.

(Herdado de DbConnectionStringBuilder)
ToString()

Retorna a cadeia de conexão associada a isso DbConnectionStringBuilder.

(Herdado de DbConnectionStringBuilder)
TryGetValue(String, Object)

Recupera um valor correspondente à chave fornecida a partir deste OdbcConnectionStringBuilder.

Implantações explícitas de interface

Nome Description
ICollection.CopyTo(Array, Int32)

Copia os elementos de ICollection um Array, começando em um índice específico Array .

(Herdado de DbConnectionStringBuilder)
ICollection.IsSynchronized

Obtém um valor que indica se o ICollection acesso ao é sincronizado (thread safe).

(Herdado de DbConnectionStringBuilder)
ICollection.SyncRoot

Obtém um objeto que pode ser usado para sincronizar o acesso ao ICollection.

(Herdado de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetAttributes()

Retorna uma coleção de atributos personalizados para esta instância de um componente.

(Herdado de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetClassName()

Retorna o nome da classe dessa instância de um componente.

(Herdado de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetComponentName()

Retorna o nome dessa instância de um componente.

(Herdado de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetConverter()

Retorna um conversor de tipo para esta instância de um componente.

(Herdado de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetDefaultEvent()

Retorna o evento padrão para esta instância de um componente.

(Herdado de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetDefaultProperty()

Retorna a propriedade padrão para esta instância de um componente.

(Herdado de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEditor(Type)

Retorna um editor do tipo especificado para esta instância de um componente.

(Herdado de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEvents()

Retorna os eventos para esta instância de um componente.

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

Retorna os eventos dessa instância de um componente usando a matriz de atributo especificada como um filtro.

(Herdado de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetProperties()

Retorna as propriedades dessa instância de um componente.

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

Retorna as propriedades dessa instância de um componente usando a matriz de atributos como um filtro.

(Herdado de DbConnectionStringBuilder)
ICustomTypeDescriptor.GetPropertyOwner(PropertyDescriptor)

Retorna um objeto que contém a propriedade descrita pelo descritor de propriedade especificado.

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

Adiciona um elemento com a chave e o valor fornecidos IDictionary ao objeto.

(Herdado de DbConnectionStringBuilder)
IDictionary.Contains(Object)

Determina se o IDictionary objeto contém um elemento com a chave especificada.

(Herdado de DbConnectionStringBuilder)
IDictionary.GetEnumerator()

Retorna um IDictionaryEnumerator objeto para o IDictionary objeto.

(Herdado de DbConnectionStringBuilder)
IDictionary.Item[Object]

Obtém ou define o elemento com a chave especificada.

(Herdado de DbConnectionStringBuilder)
IDictionary.Remove(Object)

Remove o elemento com a chave especificada do IDictionary objeto.

(Herdado de DbConnectionStringBuilder)
IEnumerable.GetEnumerator()

Retorna um enumerador que itera por meio de uma coleção.

(Herdado de DbConnectionStringBuilder)

Métodos de Extensão

Nome Description
AsParallel(IEnumerable)

Habilita a paralelização de uma consulta.

AsQueryable(IEnumerable)

Converte um IEnumerable em um IQueryable.

Cast<TResult>(IEnumerable)

Converte os elementos de um IEnumerable para o tipo especificado.

OfType<TResult>(IEnumerable)

Filtra os elementos de um IEnumerable com base em um tipo especificado.

Aplica-se a

Confira também