OleDbConnectionStringBuilder Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Poskytuje jednoduchý způsob, jak vytvořit a spravovat obsah připojovacích řetězců používaných OleDbConnection třídy.
public ref class OleDbConnectionStringBuilder sealed : System::Data::Common::DbConnectionStringBuilder
[System.ComponentModel.TypeConverter(typeof(System.Data.OleDb.OleDbConnectionStringBuilder+OleDbConnectionStringBuilderConverter))]
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("OleDbConnection is not AOT-compatible.")]
public sealed class OleDbConnectionStringBuilder : 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))>]
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("OleDbConnection is not AOT-compatible.")>]
type OleDbConnectionStringBuilder = class
inherit DbConnectionStringBuilder
[<System.ComponentModel.TypeConverter(typeof(System.Data.OleDb.OleDbConnectionStringBuilder+OleDbConnectionStringBuilderConverter))>]
type OleDbConnectionStringBuilder = class
inherit DbConnectionStringBuilder
Public NotInheritable Class OleDbConnectionStringBuilder
Inherits DbConnectionStringBuilder
- Dědičnost
- Atributy
Příklady
Následující konzolová aplikace sestaví připojovací řetězce pro několik databází OLE DB. Nejprve příklad vytvoří připojovací řetězec pro databázi Microsoft Access a 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.
Note
Tento příklad obsahuje heslo, které ukazuje, jak OleDbConnectionStringBuilder funguje s připojovacími řetězci. Ve svých aplikacích doporučujeme používat ověřování systému Windows. Pokud musíte použít heslo, nezahrnujte do aplikace pevně zakódované heslo.
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
Poznámky
Tvůrce připojovacích řetězců umožňuje 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í řetězec poskytuje vlastnosti silného typu odpovídající známým párům klíč/hodnota povolených připojeními OLE DB a vývojáři mohou přidat libovolné páry klíč/hodnota pro všechny ostatní hodnoty připojovací řetězec. Třída OleDbConnectionStringBuilder implementuje rozhraní ICustomTypeDescriptor. To znamená, že třída pracuje s návrháři Visual Studio .NET v době návrhu. Když vývojáři používají návrháře k sestavení datových sad silného typu a připojení silného typu v rámci Visual Studio .NET, třída tvůrce silného připojovací řetězec typu zobrazí vlastnosti přidružené k jeho typu a budou mít také převaděče, které mohou mapovat běžné hodnoty známých klíčů.
Vývojáři, kteří potřebují vytvářet připojovací řetězce v rámci aplikací, můžou pomocí OleDbConnectionStringBuilder třídy vytvářet a upravovat připojovací řetězce. Třída také usnadňuje správu připojovacích řetězců uložených v konfiguračním souboru aplikace. Provádí OleDbConnectionStringBuilder 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í známé klíče a jejich odpovídající vlastnosti v rámci OleDbConnectionStringBuilder třídy a jejich výchozí hodnoty. Kromě těchto konkrétních hodnot můžou vývojáři do kolekce obsažené v OleDbConnectionStringBuilder instanci přidat všechny páry klíč/hodnota:
| Key | Vlastnictví | Výchozí hodnota |
|---|---|---|
| Název souboru | FileName | "" |
| Provider | Provider | "" |
| Zdroj dat | DataSource | "" |
| Zachování bezpečnostních údajů | PersistSecurityInfo | Nepravda |
| OLE DB Services | OleDbServices | -13 |
Vlastnost Item[] zpracovává pokusy o vložení škodlivých položek. Například následující kód pomocí výchozí vlastnosti Item[] (indexer v jazyce C#) správně unikne dvojici vnořených klíč/hodnota:
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";
Výsledkem je následující připojovací řetězec, který bezpečně zpracovává neplatnou hodnotu:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Sample.mdb;User ID="Admin;NewValue=Bad"
Konstruktory
| Name | Description |
|---|---|
| OleDbConnectionStringBuilder() |
Inicializuje novou instanci OleDbConnectionStringBuilder třídy. |
| OleDbConnectionStringBuilder(String) |
Inicializuje novou instanci OleDbConnectionStringBuilder třídy. Zadaný připojovací řetězec poskytuje data pro interní informace o připojení instance. |
Vlastnosti
| Name | Description |
|---|---|
| BrowsableConnectionString |
Získá nebo nastaví hodnotu, která určuje, zda je vlastnost ConnectionString viditelná v návrhářích Visual Studio. (Zděděno od DbConnectionStringBuilder) |
| ConnectionString |
Získá nebo nastaví připojovací řetězec přidružené k DbConnectionStringBuilder. (Zděděno od DbConnectionStringBuilder) |
| Count |
Získá aktuální počet klíčů, které jsou obsaženy v vlastnosti ConnectionString . (Zděděno od DbConnectionStringBuilder) |
| DataSource |
Získá nebo nastaví název zdroje dat pro připojení. |
| FileName |
Získá nebo nastaví název souboru UDL (Universal Data Link) pro připojení ke zdroji dat. |
| 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 objektu OleDbConnectionStringBuilder. |
| OleDbServices |
Získá nebo nastaví hodnotu, která má být předána pro klíč služby OLE DB v rámci připojovacího řetězce. |
| PersistSecurityInfo |
Získá nebo nastaví logickou hodnotu, která označuje, zda jsou informace citlivé na zabezpečení, například heslo, vráceny jako součást připojení, pokud je připojení otevřené nebo byl někdy v otevřeném stavu. |
| Provider |
Získá nebo nastaví řetězec, který obsahuje název zprostředkovatele dat přidruženého k internímu připojovacímu řetězci. |
| Values |
ICollection Získá, který obsahuje hodnoty v objektu DbConnectionStringBuilder. (Zděděno od DbConnectionStringBuilder) |
Metody
| Name | Description |
|---|---|
| Add(String, Object) |
Přidá položku se zadaným klíčem a hodnotou do objektu DbConnectionStringBuilder. (Zděděno od DbConnectionStringBuilder) |
| Clear() |
Vymaže obsah OleDbConnectionStringBuilder instance. |
| ClearPropertyDescriptors() |
Vymaže kolekci PropertyDescriptor objektů v přidruženém DbConnectionStringBuilderobjektu . (Zděděno od DbConnectionStringBuilder) |
| ContainsKey(String) |
Určuje, zda OleDbConnectionStringBuilder obsahuje konkrétní klíč. |
| Equals(Object) |
Určuje, zda je zadaný objekt roven 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í dodanou Hashtable informaci o všech vlastnostech tohoto DbConnectionStringBuilderobjektu . (Zděděno od DbConnectionStringBuilder) |
| GetType() |
Získá Type aktuální instance. (Zděděno od Object) |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| Remove(String) |
Odebere položku se zadaným klíčem z OleDbConnectionStringBuilder 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 hodnotu odpovídající zadanému klíči OleDbConnectionStringBuilder z instance. |
Explicitní implementace rozhraní
| Name | Description |
|---|---|
| ICollection.CopyTo(Array, Int32) |
Zkopíruje prvky do objektu ICollectionArray, 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 ICollection této 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ěč typů 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 popisovačem zadané 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() |
Vrátí enumerátor, který iteruje kolekcí. (Zděděno od DbConnectionStringBuilder) |
Metody rozšíření
| Name | Description |
|---|---|
| AsParallel(IEnumerable) |
Umožňuje paralelizaci dotazu. |
| AsQueryable(IEnumerable) |
Převede IEnumerable na IQueryable. |
| Cast<TResult>(IEnumerable) |
Přetypuje prvky IEnumerable na zadaný typ. |
| OfType<TResult>(IEnumerable) |
Filtruje prvky IEnumerable na základě zadaného typu. |