OleDbConnectionStringBuilder Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Zapewnia prosty sposób tworzenia zawartości parametrów połączenia używanych przez klasę OleDbConnection i zarządzania nimi.
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
- Dziedziczenie
- Atrybuty
Przykłady
Poniższa aplikacja konsolowa tworzy parametry połączenia dla kilku baz danych OLE DB. Najpierw przykład tworzy parametry połączenia dla bazy danych programu Microsoft Access, a następnie tworzy parametry połączenia dla bazy danych IBM DB2. Przykład analizuje również istniejący parametry połączenia i demonstruje różne sposoby manipulowania zawartością parametry połączenia.
Uwaga
Ten przykład zawiera hasło, które pokazuje, jak OleDbConnectionStringBuilder działa z parametrami połączenia. W aplikacjach zalecamy użycie uwierzytelniania systemu Windows. Jeśli musisz użyć hasła, nie dołączaj w aplikacji trwale zakodowanego hasła.
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
Uwagi
Konstruktor parametry połączenia umożliwia deweloperom programowe tworzenie składniowo poprawnych parametrów połączenia oraz analizowanie i ponowne kompilowanie istniejących parametrów połączenia przy użyciu właściwości i metod klasy. Konstruktor parametry połączenia udostępnia silnie typizowane właściwości odpowiadające znanym parom klucz/wartość dozwolonym przez połączenia OLE DB, a deweloperzy mogą dodawać dowolne pary klucz/wartość dla innych wartości parametry połączenia. Klasa OleDbConnectionStringBuilder implementuje interfejs ICustomTypeDescriptor. Oznacza to, że klasa współpracuje z projektantami .NET programu Visual Studio w czasie projektowania. Gdy deweloperzy używają projektanta do tworzenia silnie typiowanych zestawów danych i silnie typiowanych połączeń w programie Visual Studio .NET, silnie typizowane parametry połączenia klasy konstruktora będą wyświetlać właściwości skojarzone z typem, a także będą miały konwertery, które mogą mapować typowe wartości znanych kluczy.
Deweloperzy, którzy muszą tworzyć parametry połączenia w ramach aplikacji, mogą używać OleDbConnectionStringBuilder klasy do tworzenia i modyfikowania parametrów połączenia. Klasa ułatwia również zarządzanie parametrami połączenia przechowywanymi w pliku konfiguracji aplikacji. Funkcja OleDbConnectionStringBuilder wykonuje kontrole tylko dla ograniczonego zestawu znanych par klucz/wartość. W związku z tym ta klasa może służyć do tworzenia nieprawidłowych parametrów połączenia. W poniższej tabeli wymieniono znane klucze i odpowiadające im właściwości w OleDbConnectionStringBuilder klasie oraz ich wartości domyślne. Oprócz tych konkretnych wartości deweloperzy mogą dodawać do kolekcji wszystkie pary klucz/wartość, które znajdują się w wystąpieniu OleDbConnectionStringBuilder :
Klucz | Właściwość | Wartość domyślna |
---|---|---|
Nazwa pliku | FileName | "" |
Dostawca | Provider | "" |
Źródło danych | DataSource | "" |
Utrwalanie informacji zabezpieczających | PersistSecurityInfo | Fałsz |
Usługi OLE DB | OleDbServices | -13 |
Właściwość Item[] obsługuje próby wstawienia złośliwych wpisów. Na przykład poniższy kod, używając właściwości domyślnej Item[] (indeksator w języku C#) poprawnie ucieka przed zagnieżdżonym parą klucz/wartość:
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";
Wynik jest następujący parametry połączenia, który obsługuje nieprawidłową wartość w bezpieczny sposób:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Sample.mdb;User ID="Admin;NewValue=Bad"
Konstruktory
OleDbConnectionStringBuilder() |
Inicjuje nowe wystąpienie klasy OleDbConnectionStringBuilder. |
OleDbConnectionStringBuilder(String) |
Inicjuje nowe wystąpienie klasy OleDbConnectionStringBuilder. Podany parametry połączenia dostarcza dane dla informacji o połączeniu wewnętrznym wystąpienia. |
Właściwości
BrowsableConnectionString |
Pobiera lub ustawia wartość wskazującą, czy właściwość jest widoczna ConnectionString w projektanci programu Visual Studio. (Odziedziczone po DbConnectionStringBuilder) |
ConnectionString |
Pobiera lub ustawia parametry połączenia skojarzone z elementem DbConnectionStringBuilder. (Odziedziczone po DbConnectionStringBuilder) |
Count |
Pobiera bieżącą liczbę kluczy zawartych we ConnectionString właściwości . (Odziedziczone po DbConnectionStringBuilder) |
DataSource |
Pobiera lub ustawia nazwę źródła danych do nawiązania połączenia. |
FileName |
Pobiera lub ustawia nazwę pliku universal Data Link (UDL) na potrzeby nawiązywania połączenia ze źródłem danych. |
IsFixedSize |
Pobiera wartość wskazującą, czy element DbConnectionStringBuilder ma stały rozmiar. (Odziedziczone po DbConnectionStringBuilder) |
IsReadOnly |
Pobiera wartość wskazującą, czy DbConnectionStringBuilder element jest tylko do odczytu. (Odziedziczone po DbConnectionStringBuilder) |
Item[String] |
Pobiera lub ustawia wartość skojarzona z określonym kluczem. W języku C# ta właściwość jest indeksatorem. |
Keys |
Pobiera element ICollection zawierający klucze w obiekcie OleDbConnectionStringBuilder. |
OleDbServices |
Pobiera lub ustawia wartość, która ma zostać przekazana dla klucza usług OLE DB w parametry połączenia. |
PersistSecurityInfo |
Pobiera lub ustawia wartość logiczną wskazującą, czy informacje poufne zabezpieczeń, takie jak hasło, są zwracane w ramach połączenia, jeśli połączenie jest otwarte, czy kiedykolwiek było otwarte. |
Provider |
Pobiera lub ustawia ciąg zawierający nazwę dostawcy danych skojarzonego z wewnętrznym parametry połączenia. |
Values |
Pobiera element ICollection zawierający wartości w obiekcie DbConnectionStringBuilder. (Odziedziczone po DbConnectionStringBuilder) |
Metody
Add(String, Object) |
Dodaje wpis z określonym kluczem i wartością do elementu DbConnectionStringBuilder. (Odziedziczone po DbConnectionStringBuilder) |
Clear() |
Czyści zawartość OleDbConnectionStringBuilder wystąpienia. |
ClearPropertyDescriptors() |
Czyści kolekcję PropertyDescriptor obiektów na skojarzonym DbConnectionStringBuilderobiekcie . (Odziedziczone po DbConnectionStringBuilder) |
ContainsKey(String) |
Określa, czy element OleDbConnectionStringBuilder zawiera określony klucz. |
Equals(Object) |
Określa, czy dany obiekt jest taki sam, jak bieżący obiekt. (Odziedziczone po Object) |
EquivalentTo(DbConnectionStringBuilder) |
Porównuje informacje o połączeniu w tym DbConnectionStringBuilder obiekcie z informacjami o połączeniu w podanym obiekcie. (Odziedziczone po DbConnectionStringBuilder) |
GetHashCode() |
Służy jako domyślna funkcja skrótu. (Odziedziczone po Object) |
GetProperties(Hashtable) |
Wypełnia element podany Hashtable przy użyciu informacji o wszystkich właściwościach tego obiektu DbConnectionStringBuilder. (Odziedziczone po DbConnectionStringBuilder) |
GetType() |
Type Pobiera wartość bieżącego wystąpienia. (Odziedziczone po Object) |
MemberwiseClone() |
Tworzy płytkią kopię bieżącego Objectelementu . (Odziedziczone po Object) |
Remove(String) |
Usuwa wpis z określonym kluczem OleDbConnectionStringBuilder z wystąpienia. |
ShouldSerialize(String) |
Wskazuje, czy określony klucz istnieje w tym DbConnectionStringBuilder wystąpieniu. (Odziedziczone po DbConnectionStringBuilder) |
ToString() |
Zwraca parametry połączenia skojarzone z tym DbConnectionStringBuilderelementem . (Odziedziczone po DbConnectionStringBuilder) |
TryGetValue(String, Object) |
Pobiera wartość odpowiadającą podanemu kluczowi OleDbConnectionStringBuilder z wystąpienia. |
Jawne implementacje interfejsu
ICollection.CopyTo(Array, Int32) |
Kopiuje elementy ICollection elementu do obiektu Array, zaczynając od określonego Array indeksu. (Odziedziczone po DbConnectionStringBuilder) |
ICollection.IsSynchronized |
Pobiera wartość wskazującą, czy dostęp do elementu ICollection jest synchronizowany (bezpieczny wątk). (Odziedziczone po DbConnectionStringBuilder) |
ICollection.SyncRoot |
Pobiera obiekt, który może służyć do synchronizowania dostępu do obiektu ICollection. (Odziedziczone po DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetAttributes() |
Zwraca kolekcję atrybutów niestandardowych dla tego wystąpienia składnika. (Odziedziczone po DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetClassName() |
Zwraca nazwę klasy tego wystąpienia składnika. (Odziedziczone po DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetComponentName() |
Zwraca nazwę tego wystąpienia składnika. (Odziedziczone po DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetConverter() |
Zwraca konwerter typów dla tego wystąpienia składnika. (Odziedziczone po DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetDefaultEvent() |
Zwraca zdarzenie domyślne dla tego wystąpienia składnika. (Odziedziczone po DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetDefaultProperty() |
Zwraca właściwość domyślną dla tego wystąpienia składnika. (Odziedziczone po DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetEditor(Type) |
Zwraca edytor określonego typu dla tego wystąpienia składnika. (Odziedziczone po DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetEvents() |
Zwraca zdarzenia dla tego wystąpienia składnika. (Odziedziczone po DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetEvents(Attribute[]) |
Zwraca zdarzenia dla tego wystąpienia składnika przy użyciu określonej tablicy atrybutów jako filtru. (Odziedziczone po DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetProperties() |
Zwraca właściwości tego wystąpienia składnika. (Odziedziczone po DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetProperties(Attribute[]) |
Zwraca właściwości tego wystąpienia składnika przy użyciu tablicy atrybutów jako filtru. (Odziedziczone po DbConnectionStringBuilder) |
ICustomTypeDescriptor.GetPropertyOwner(PropertyDescriptor) |
Zwraca obiekt, który zawiera właściwość opisaną przez deskryptor określonej właściwości. (Odziedziczone po DbConnectionStringBuilder) |
IDictionary.Add(Object, Object) |
Dodaje element z podanym kluczem i wartością IDictionary do obiektu. (Odziedziczone po DbConnectionStringBuilder) |
IDictionary.Contains(Object) |
Określa, czy IDictionary obiekt zawiera element z określonym kluczem. (Odziedziczone po DbConnectionStringBuilder) |
IDictionary.GetEnumerator() |
IDictionaryEnumerator Zwraca obiekt dla IDictionary obiektu. (Odziedziczone po DbConnectionStringBuilder) |
IDictionary.Item[Object] |
Pobiera lub ustawia element przy użyciu określonego klucza. (Odziedziczone po DbConnectionStringBuilder) |
IDictionary.Remove(Object) |
Usuwa element z określonym kluczem IDictionary z obiektu. (Odziedziczone po DbConnectionStringBuilder) |
IEnumerable.GetEnumerator() |
Zwraca moduł wyliczający, który iteruje po kolekcji. (Odziedziczone po DbConnectionStringBuilder) |
Metody rozszerzania
Cast<TResult>(IEnumerable) |
Rzutuje elementy obiektu IEnumerable na określony typ. |
OfType<TResult>(IEnumerable) |
Filtruje elementy IEnumerable elementu na podstawie określonego typu. |
AsParallel(IEnumerable) |
Umożliwia równoległość zapytania. |
AsQueryable(IEnumerable) |
Konwertuje element IEnumerable na .IQueryable |