OleDbConnectionStringBuilder 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 classe 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
- Herança
- Atributos
Exemplos
O aplicativo de console a seguir cria cadeias de conexão para vários bancos de dados OLE DB. Primeiro, o exemplo cria um cadeia de conexão para um banco de dados Microsoft Access e, em seguida, cria um 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.
Note
Este exemplo inclui uma senha para demonstrar como OleDbConnectionStringBuilder 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 codificada em código em seu aplicativo.
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
Comentários
O construtor de cadeias de conexão permite 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 cadeia de conexão fornece propriedades fortemente tipadas correspondentes aos pares chave/valor conhecidos permitidos por conexões OLE DB, e os desenvolvedores podem adicionar pares de chave/valor arbitrários para quaisquer outros valores cadeia de conexão. A classe OleDbConnectionStringBuilder implementa a interface ICustomTypeDescriptor. Isso significa que a classe trabalha com designers Visual Studio .NET em tempo de design. Quando os desenvolvedores usam o designer para criar Conjuntos de Dados fortemente tipados e conexões fortemente tipadas dentro de Visual Studio .NET, a classe de construtor cadeia de conexão fortemente tipada exibirá as propriedades associadas ao seu tipo e também terá conversores que podem mapear valores comuns para chaves conhecidas.
Os desenvolvedores que precisam criar cadeias de conexão como parte dos aplicativos podem usar a OleDbConnectionStringBuilder 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. O OleDbConnectionStringBuilder 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 e suas propriedades correspondentes dentro da OleDbConnectionStringBuilder classe e seus valores padrão. Além desses valores específicos, os desenvolvedores podem adicionar quaisquer pares chave/valor à coleção contida na OleDbConnectionStringBuilder instância:
| Chave | Property | Valor padrão |
|---|---|---|
| Nome do arquivo | FileName | "" |
| Provider | Provider | "" |
| Fonte de Dados | DataSource | "" |
| Informações de Persistência de Segurança | PersistSecurityInfo | Falso |
| Serviços OLE DB | OleDbServices | -13 |
A propriedade Item[] manipula tentativas de inserir entradas mal-intencionadas. Por exemplo, o código a seguir, usando a propriedade Item[] padrão (o indexador, em C#) escapa corretamente do par chave/valor aninhado:
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";
O resultado é a seguinte cadeia de conexão que manipula o valor inválido de maneira segura:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Sample.mdb;User ID="Admin;NewValue=Bad"
Construtores
| Nome | Description |
|---|---|
| OleDbConnectionStringBuilder() |
Inicializa uma nova instância da classe OleDbConnectionStringBuilder. |
| OleDbConnectionStringBuilder(String) |
Inicializa uma nova instância da classe OleDbConnectionStringBuilder. 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 propriedade ConnectionString está visível em designers de Visual Studio. (Herdado de DbConnectionStringBuilder) |
| ConnectionString |
Obtém ou define o cadeia de conexão associado ao DbConnectionStringBuilder. (Herdado de DbConnectionStringBuilder) |
| Count |
Obtém o número atual de chaves contidas na ConnectionString propriedade. (Herdado de DbConnectionStringBuilder) |
| DataSource |
Obtém ou define o nome da fonte de dados à qual se conectar. |
| FileName |
Obtém ou define o nome do arquivo UDL (Universal Data Link) para se conectar à fonte de dados. |
| 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 OleDbConnectionStringBuilder. |
| OleDbServices |
Obtém ou define o valor a ser passado para a chave dos Serviços OLE DB dentro da cadeia de conexão. |
| PersistSecurityInfo |
Obtém ou define um valor booliano que indica se informações confidenciais de segurança, como a senha, são retornadas como parte da conexão se a conexão estiver aberta ou se alguma vez estiver em um estado aberto. |
| Provider |
Obtém ou define uma cadeia de caracteres que contém o nome do provedor de dados associado à cadeia de conexão interna. |
| 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 OleDbConnectionStringBuilder instância. |
| ClearPropertyDescriptors() |
Limpa a coleção de PropertyDescriptor objetos no associado DbConnectionStringBuilder. (Herdado de DbConnectionStringBuilder) |
| ContainsKey(String) |
Determina se o OleDbConnectionStringBuilder 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 hash predefinida. (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 OleDbConnectionStringBuilder instância. |
| ShouldSerialize(String) |
Indica se a chave especificada existe nesta DbConnectionStringBuilder instância. (Herdado de DbConnectionStringBuilder) |
| ToString() |
Retorna o cadeia de conexão associado a este DbConnectionStringBuilder. (Herdado de DbConnectionStringBuilder) |
| TryGetValue(String, Object) |
Recupera um valor correspondente à chave fornecida da OleDbConnectionStringBuilder instância. |
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 acesso ao 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 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. |