OdbcConnectionStringBuilder Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
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
- 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. |