Partilhar via


OleDbConnectionStringBuilder Classe

Definição

Fornece uma maneira simples de criar e gerenciar o conteúdo de 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
OleDbConnectionStringBuilder
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 do Microsoft Access e, em seguida, 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 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 embutida 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 = _
        "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()

    ' 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 cadeia 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 tipada 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 funciona com designers .NET do Visual Studio em tempo de design. Quando os desenvolvedores usam o designer para criar Conjuntos de Dados fortemente tipados e conexões fortemente tipadas no Visual Studio .NET, a classe de construtor de 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 Propriedade Valor padrão
Nome do Arquivo FileName ""
Provedor Provider ""
fonte de dados DataSource ""
Informações de Persistência de Segurança PersistSecurityInfo Falso
Serviços do OLE DB OleDbServices -13

A Item[] propriedade manipula tentativas de inserir entradas mal-intencionadas. 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.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 é o 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

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 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)
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 conectar-se à 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 é 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 OleDbConnectionStringBuilder.

OleDbServices

Obtém ou define o valor a ser passado para a chave de Serviço OLE DB na cadeia de conexão.

PersistSecurityInfo

Obtém ou define um valor booliano que indica se informações confidenciais de segurança, como a senha, serão retornadas como parte da conexão se ela estiver aberta ou se já esteve 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

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 OleDbConnectionStringBuilder.

ClearPropertyDescriptors()

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

(Herdado de DbConnectionStringBuilder)
ContainsKey(String)

Determina se a 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 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 OleDbConnectionStringBuilder.

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 à chave fornecida da instância OleDbConnectionStringBuilder.

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.

Aplica-se a

Confira também