OdbcConnectionStringBuilder Třída

Definice

Poskytuje jednoduchý způsob, jak vytvořit a spravovat obsah připojovacích řetězců používaných OdbcConnection třídou.

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
Dědičnost
OdbcConnectionStringBuilder
Atributy

Příklady

Následující konzolová aplikace sestaví připojovací řetězce pro několik databází ODBC. Nejprve příklad vytvoří připojovací řetězec pro databázi Microsoft Accessu. Pak vytvoří připojovací řetězec pro databázi IBM DB2. Příklad také analyzuje existující připojovací řetězec a ukazuje různé způsoby manipulace s obsahem připojovacího řetězce.

Poznámka

Tento příklad obsahuje heslo, které ukazuje, jak OdbcConnectionStringBuilder funguje s připojovacími řetězci. Ve vašich aplikacích doporučujeme používat ověřování systému Windows. Pokud je nutné použít heslo, nevkládejte do své aplikace pevně zakódované heslo.

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

Poznámky

Tvůrci připojovacích řetězců umožňují vývojářům programově vytvářet syntakticky správné připojovací řetězce a parsovat a znovu sestavit existující připojovací řetězce pomocí vlastností a metod třídy. Tvůrce připojovacích řetězců poskytuje vlastnosti silného typu odpovídající známým párům klíč/hodnota povolených připojeními ODBC a vývojáři můžou přidat libovolné páry klíč/hodnota pro všechny ostatní hodnoty připojovacího řetězce.

Vývojáři, kteří potřebují vytvořit připojovací řetězce jako součást aplikací, můžou třídu použít OdbcConnectionStringBuilder k sestavení a úpravě připojovacích řetězců. Třída také usnadňuje správu připojovacích řetězců uložených v konfiguračním souboru aplikace. OdbcConnectionStringBuilder provádí kontroly pouze pro omezenou sadu známých párů klíč/hodnota. Proto lze tuto třídu použít k vytvoření neplatných připojovacích řetězců. Následující tabulka uvádí konkrétní známé klíče společně s odpovídajícími vlastnostmi v rámci OdbcConnectionStringBuilder třídy a jejich výchozí hodnoty. Kromě těchto konkrétních hodnot můžou vývojáři do kolekce obsažené v OdbcConnectionStringBuilder instanci přidat jakékoli páry klíč/hodnota.

Klíč Vlastnost Komentář Výchozí hodnota
Ovladač Driver Vývojáři by při nastavování Driver vlastnosti neměli obsahovat složené závorky, které obklopují název ovladače. Instance OdbcConnectionStringBuilder podle potřeby přidá složené závorky. Prázdný řetězec
DSN Dsn Prázdný řetězec

Pokud jakákoli hodnota (jiná než Driver hodnota) v připojovacím řetězci obsahuje středník (;), OdbcConnectionStringBuilder uzavře hodnotu do uvozovek v připojovacím řetězci. Aby se zabránilo tomuto problému s Driver hodnotou, která často obsahuje středník, OdbcConnectionStringBuilder třída tuto hodnotu vždy obklopuje složenými závorkami. Specifikace ODBC označuje, že hodnoty ovladače, které obsahují středníky, musí být obklopeny složenými závorkami a tato třída to zpracovává za vás.

Vlastnost Item[] zpracovává pokusy o vložení škodlivého kódu. Například následující kód pomocí výchozí Item[] vlastnosti (indexer v jazyce C#) správně ukazuje dvojici vnořených klíč/hodnota.

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

Výsledkem je následující připojovací řetězec, který bezpečně zpracovává neplatnou hodnotu:

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

Konstruktory

OdbcConnectionStringBuilder()

Inicializuje novou instanci OdbcConnectionStringBuilder třídy.

OdbcConnectionStringBuilder(String)

Inicializuje novou instanci OdbcConnectionStringBuilder třídy. Zadaný připojovací řetězec poskytuje data pro interní informace o připojení instance.

Vlastnosti

BrowsableConnectionString

Získá nebo nastaví hodnotu, která označuje, zda ConnectionString je vlastnost viditelná v Visual Studio návrháři.

(Zděděno od DbConnectionStringBuilder)
ConnectionString

Získá nebo nastaví připojovací řetězec přidružený k sadě DbConnectionStringBuilder.

(Zděděno od DbConnectionStringBuilder)
Count

Získá aktuální počet klíčů, které jsou obsaženy v ConnectionString vlastnosti.

(Zděděno od DbConnectionStringBuilder)
Driver

Získá nebo nastaví název ovladače ODBC přidruženého k připojení.

Dsn

Získá nebo nastaví název názvu zdroje dat (DSN) přidruženého k připojení.

IsFixedSize

Získá hodnotu, která označuje, zda DbConnectionStringBuilder má pevnou velikost.

(Zděděno od DbConnectionStringBuilder)
IsReadOnly

Získá hodnotu, která označuje, zda DbConnectionStringBuilder je jen pro čtení.

(Zděděno od DbConnectionStringBuilder)
Item[String]

Získá nebo nastaví hodnotu přidruženou k zadanému klíči. V jazyce C# je tato vlastnost indexerem.

Keys

ICollection Získá, který obsahuje klíče v OdbcConnectionStringBuilder.

Values

ICollection Získá hodnotu, která obsahuje hodnoty v souboru DbConnectionStringBuilder.

(Zděděno od DbConnectionStringBuilder)

Metody

Add(String, Object)

Přidá položku se zadaným klíčem a hodnotou do DbConnectionStringBuildersouboru .

(Zděděno od DbConnectionStringBuilder)
Clear()

Vymaže obsah OdbcConnectionStringBuilder instance.

ClearPropertyDescriptors()

Vymaže kolekci PropertyDescriptor objektů na přidruženém DbConnectionStringBuilderobjektu .

(Zděděno od DbConnectionStringBuilder)
ContainsKey(String)

Určuje, zda OdbcConnectionStringBuilder obsahuje konkrétní klíč.

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
EquivalentTo(DbConnectionStringBuilder)

Porovná informace o připojení v tomto DbConnectionStringBuilder objektu s informacemi o připojení v zadaném objektu.

(Zděděno od DbConnectionStringBuilder)
GetHashCode()

Slouží jako výchozí funkce hash.

(Zděděno od Object)
GetProperties(Hashtable)

Vyplní zadaný Hashtable údaj o všech vlastnostech tohoto DbConnectionStringBuildersouboru .

(Zděděno od DbConnectionStringBuilder)
GetType()

Type Získá aktuální instanci.

(Zděděno od Object)
MemberwiseClone()

Vytvoří použádnou kopii aktuálního souboru Object.

(Zděděno od Object)
Remove(String)

Odebere položku se zadaným klíčem z OdbcConnectionStringBuilder instance.

ShouldSerialize(String)

Určuje, zda zadaný klíč existuje v této DbConnectionStringBuilder instanci.

(Zděděno od DbConnectionStringBuilder)
ToString()

Vrátí připojovací řetězec přidružený k tomuto DbConnectionStringBuilder.

(Zděděno od DbConnectionStringBuilder)
TryGetValue(String, Object)

Načte z tohoto OdbcConnectionStringBuilderklíče hodnotu odpovídající zadanému klíči .

Explicitní implementace rozhraní

ICollection.CopyTo(Array, Int32)

Zkopíruje prvky do objektu ICollection Array, počínaje konkrétním Array indexem.

(Zděděno od DbConnectionStringBuilder)
ICollection.IsSynchronized

Získá hodnotu označující, zda je přístup k této ICollection synchronizaci (bezpečné vlákno).

(Zděděno od DbConnectionStringBuilder)
ICollection.SyncRoot

Získá objekt, který lze použít k synchronizaci přístupu k .ICollection

(Zděděno od DbConnectionStringBuilder)
ICustomTypeDescriptor.GetAttributes()

Vrátí kolekci vlastních atributů pro tuto instanci komponenty.

(Zděděno od DbConnectionStringBuilder)
ICustomTypeDescriptor.GetClassName()

Vrátí název třídy této instance komponenty.

(Zděděno od DbConnectionStringBuilder)
ICustomTypeDescriptor.GetComponentName()

Vrátí název této instance komponenty.

(Zděděno od DbConnectionStringBuilder)
ICustomTypeDescriptor.GetConverter()

Vrátí převaděč typu pro tuto instanci komponenty.

(Zděděno od DbConnectionStringBuilder)
ICustomTypeDescriptor.GetDefaultEvent()

Vrátí výchozí událost pro tuto instanci komponenty.

(Zděděno od DbConnectionStringBuilder)
ICustomTypeDescriptor.GetDefaultProperty()

Vrátí výchozí vlastnost pro tuto instanci komponenty.

(Zděděno od DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEditor(Type)

Vrátí editor zadaného typu pro tuto instanci komponenty.

(Zděděno od DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEvents()

Vrátí události pro tuto instanci komponenty.

(Zděděno od DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEvents(Attribute[])

Vrátí události pro tuto instanci komponenty pomocí zadaného pole atributů jako filtru.

(Zděděno od DbConnectionStringBuilder)
ICustomTypeDescriptor.GetProperties()

Vrátí vlastnosti pro tuto instanci komponenty.

(Zděděno od DbConnectionStringBuilder)
ICustomTypeDescriptor.GetProperties(Attribute[])

Vrátí vlastnosti pro tuto instanci komponenty pomocí pole atributů jako filtru.

(Zděděno od DbConnectionStringBuilder)
ICustomTypeDescriptor.GetPropertyOwner(PropertyDescriptor)

Vrátí objekt, který obsahuje vlastnost popsanou zadaným popisovačem vlastnosti.

(Zděděno od DbConnectionStringBuilder)
IDictionary.Add(Object, Object)

Přidá prvek se zadaným klíčem a hodnotou do objektu IDictionary .

(Zděděno od DbConnectionStringBuilder)
IDictionary.Contains(Object)

Určuje, zda IDictionary objekt obsahuje prvek se zadaným klíčem.

(Zděděno od DbConnectionStringBuilder)
IDictionary.GetEnumerator()

IDictionaryEnumerator Vrátí objekt objektuIDictionary.

(Zděděno od DbConnectionStringBuilder)
IDictionary.Item[Object]

Získá nebo nastaví prvek se zadaným klíčem.

(Zděděno od DbConnectionStringBuilder)
IDictionary.Remove(Object)

Odebere prvek se zadaným klíčem z objektu IDictionary .

(Zděděno od DbConnectionStringBuilder)
IEnumerable.GetEnumerator()

Vrací enumerátor procházející kolekci.

(Zděděno od DbConnectionStringBuilder)

Metody rozšíření

Cast<TResult>(IEnumerable)

Přetypuje prvky zadaného IEnumerable typu.

OfType<TResult>(IEnumerable)

Filtruje prvky IEnumerable založené na zadaném typu.

AsParallel(IEnumerable)

Umožňuje paralelizaci dotazu.

AsQueryable(IEnumerable)

Převede na IEnumerable IQueryable.

Platí pro

Viz také