OdbcConnectionStringBuilder 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ę OdbcConnection i zarządzania nimi.
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
- Dziedziczenie
- Atrybuty
Przykłady
Poniższa aplikacja konsolowa tworzy parametry połączenia dla kilku baz danych ODBC. Najpierw przykład tworzy parametry połączenia dla bazy danych programu Microsoft Access. Następnie tworzy parametry połączenia dla bazy danych IBM DB2. Przykład analizuje również istniejącą 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 OdbcConnectionStringBuilder 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.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
Uwagi
Konstruktorzy parametry połączenia umożliwiają deweloperom programowe tworzenie syntaktycznie 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 ODBC, a deweloperzy mogą dodawać dowolne pary klucz/wartość dla innych wartości parametry połączenia.
Deweloperzy, którzy muszą tworzyć parametry połączenia w ramach aplikacji, mogą używać OdbcConnectionStringBuilder klasy do tworzenia i modyfikowania parametrów połączenia. Klasa ułatwia również zarządzanie parametrami połączenia przechowywanymi w pliku konfiguracji aplikacji. OdbcConnectionStringBuilder 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 określone znane klucze wraz z odpowiednimi właściwościami w OdbcConnectionStringBuilder klasie oraz ich wartościami domyślnymi. Oprócz tych konkretnych wartości deweloperzy mogą dodawać do kolekcji wszystkie pary klucz/wartość, które znajdują się w wystąpieniu OdbcConnectionStringBuilder .
Klucz | Właściwość | Komentarz | Wartość domyślna |
---|---|---|---|
Sterownik | Driver | Deweloperzy nie powinni uwzględniać nawiasów klamrowych otaczających nazwę sterownika podczas ustawiania Driver właściwości . Wystąpienie OdbcConnectionStringBuilder dodaje nawiasy klamrowe zgodnie z potrzebami. | Pusty ciąg |
DSN | Dsn | Pusty ciąg |
Jeśli jakakolwiek wartość (inna niż Driver wartość) w parametry połączenia zawiera średnik (;), OdbcConnectionStringBuilder wartość otacza znaki cudzysłowu w parametry połączenia. Aby uniknąć tego problemu Driver z wartością, która często zawiera średnik, OdbcConnectionStringBuilder klasa zawsze otacza tę wartość nawiasami klamrowymi. Specyfikacja ODBC wskazuje, że wartości sterowników, które zawierają średniki, muszą być otoczone nawiasami klamrowymi, a ta klasa obsługuje to za Ciebie.
Właściwość Item[] obsługuje próby wstawienia złośliwego kodu. Na przykład poniższy kod używający właściwości domyślnej Item[] (indeksator w języku C#) poprawnie unika zagnieżdżonej pary klucz/wartość.
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);
Wynik jest następujący parametry połączenia, który obsługuje nieprawidłową wartość w bezpieczny sposób:
Driver={SQL Server};Server="MyServer;NewValue=Bad"
Konstruktory
OdbcConnectionStringBuilder() |
Inicjuje nowe wystąpienie klasy OdbcConnectionStringBuilder. |
OdbcConnectionStringBuilder(String) |
Inicjuje nowe wystąpienie klasy OdbcConnectionStringBuilder. 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) |
Driver |
Pobiera lub ustawia nazwę sterownika ODBC skojarzonego z połączeniem. |
Dsn |
Pobiera lub ustawia nazwę źródła danych (DSN) skojarzonego z połączeniem. |
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 OdbcConnectionStringBuilder. |
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ść OdbcConnectionStringBuilder wystąpienia. |
ClearPropertyDescriptors() |
Czyści kolekcję PropertyDescriptor obiektów na skojarzonym DbConnectionStringBuilderobiekcie . (Odziedziczone po DbConnectionStringBuilder) |
ContainsKey(String) |
Określa, czy element OdbcConnectionStringBuilder 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 OdbcConnectionStringBuilder 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 z tego OdbcConnectionStringBuilderelementu . |
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 |