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 de cadeias de conexão usadas pela classe OdbcConnection.
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 um cadeia de conexão para um banco de dados IBM DB2. O exemplo também analisa um cadeia de conexão existente e demonstra várias maneiras de manipular o conteúdo do cadeia de conexão.
Observação
Este exemplo inclui uma senha para demonstrar como OdbcConnectionStringBuilder funciona com cadeias de conexão. Em seus aplicativos, recomendamos que você use a Autenticação do Windows. Se você precisar usar uma senha, não inclua uma senha embutida em código em seu aplicativo.
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
Comentários
Os construtores de cadeia 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 cadeia de conexão fornece propriedades fortemente tipada 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 pares chave/valor à coleção contida na OdbcConnectionStringBuilder instância.
Chave | Propriedade | Comentário | Valor padrão |
---|---|---|---|
Driver | Driver | Os desenvolvedores não devem incluir as chaves ao redor do nome do driver quando definem 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) no cadeia de conexão contiver um ponto e vírgula (;), o envolverá o OdbcConnectionStringBuilder valor com aspas no 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 entre 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 é o seguinte cadeia de conexão que manipula o valor inválido de maneira segura:
Driver={SQL Server};Server="MyServer;NewValue=Bad"
Construtores
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 oferece os dados para obter informações de conexão internas da instância. |
Propriedades
BrowsableConnectionString |
Obtém ou define um valor que indica se a propriedade ConnectionString é visível nos designers do Visual Studio. (Herdado de DbConnectionStringBuilder) |
ConnectionString |
Obtém ou define a cadeia de conexão associada a DbConnectionStringBuilder. (Herdado de DbConnectionStringBuilder) |
Count |
Obtém o número atual de chaves contidas na propriedade ConnectionString. (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 é somente leitura. (Herdado de DbConnectionStringBuilder) |
Item[String] |
Obtém ou define o valor associado à chave especificada. No 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
Add(String, Object) |
Adiciona uma entrada com a chave e o valor especificados ao DbConnectionStringBuilder. (Herdado de DbConnectionStringBuilder) |
Clear() |
Limpa o conteúdo da instância OdbcConnectionStringBuilder. |
ClearPropertyDescriptors() |
Limpa a coleção de objetos PropertyDescriptor no DbConnectionStringBuilder associado. (Herdado de DbConnectionStringBuilder) |
ContainsKey(String) |
Determina se a OdbcConnectionStringBuilder 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 objeto DbConnectionStringBuilder 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 Hashtable fornecido 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 Object atual. (Herdado de Object) |
Remove(String) |
Remove a entrada com a chave especificada da instância de OdbcConnectionStringBuilder. |
ShouldSerialize(String) |
Indica se a chave especificada existe nessa instância DbConnectionStringBuilder. (Herdado de DbConnectionStringBuilder) |
ToString() |
Retorna a cadeia de conexão associada a esse DbConnectionStringBuilder. (Herdado de DbConnectionStringBuilder) |
TryGetValue(String, Object) |
Recupera um valor correspondente para a chave fornecida deste OdbcConnectionStringBuilder. |
Implantações explícitas de interface
ICollection.CopyTo(Array, Int32) |
Copia os elementos do ICollection para um Array, começando em um determinado índice Array. (Herdado de DbConnectionStringBuilder) |
ICollection.IsSynchronized |
Obtém um valor que indica se o acesso à ICollection é 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 de classe desta instância de um componente. (Herdado de DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetComponentName() |
Retorna o nome desta 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 desta instância de um componente. (Herdado de DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetEvents(Attribute[]) |
Retorna os eventos desta instância de um componente usando a matriz de atributos especificada como um filtro. (Herdado de DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetProperties() |
Retorna as propriedades desta instância de um componente. (Herdado de DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetProperties(Attribute[]) |
Retorna as propriedades desta 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 ao objeto IDictionary. (Herdado de DbConnectionStringBuilder) |
IDictionary.Contains(Object) |
Determina se o objeto IDictionary contém um elemento com a chave especificada. (Herdado de DbConnectionStringBuilder) |
IDictionary.GetEnumerator() |
Retorna um objeto IDictionaryEnumerator para o objeto IDictionary. (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 objeto IDictionary. (Herdado de DbConnectionStringBuilder) |
IEnumerable.GetEnumerator() |
Retorna um enumerador que itera em uma coleção. (Herdado de DbConnectionStringBuilder) |
Métodos de Extensão
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. |
AsParallel(IEnumerable) |
Habilita a paralelização de uma consulta. |
AsQueryable(IEnumerable) |
Converte um IEnumerable em um IQueryable. |