OleDbConnectionStringBuilder Класс

Определение

Удобное средство, с помощью которого можно создавать используемые классом OleDbConnection строки соединений и управлять их содержимым.Provides a simple way to create and manage the contents of connection strings used by the OleDbConnection class.

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
Наследование
OleDbConnectionStringBuilder
Атрибуты

Примеры

Следующее консольное приложение создает строки подключения для нескольких OLE DB баз данных.The following console application builds connection strings for several OLE DB databases. Во-первых, в примере создается строка подключения для базы данных Microsoft Access, а затем создается строка подключения для базы данных IBM DB2.First, the example creates a connection string for a Microsoft Access database, and then creates a connection string for an IBM DB2 database. В примере также анализируется существующая строка подключения и демонстрируются различные способы управления содержимым строки подключения.The example also parses an existing connection string, and demonstrates various ways of manipulating the connection string's contents.

Примечание

В этом примере для демонстрации взаимодействия класса OleDbConnectionStringBuilder со строками подключения используется пароль.This example includes a password to demonstrate how OleDbConnectionStringBuilder works with connection strings. В приложениях рекомендуется использовать аутентификацию Windows.In your applications, we recommend that you use Windows Authentication. Если необходимо использовать пароль, то не следует включать в приложение пароли, жестко заданные в коде.If you must use a password, do not include a hard-coded password in your application.

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

Комментарии

Построитель строк подключения позволяет разработчикам создавать синтаксически правильные строки подключения программным образом, а также проводить синтаксический анализ существующих строк подключения и перестраивать их с помощью свойств и методов этого класса.The connection string builder lets developers programmatically create syntactically correct connection strings, and parse and rebuild existing connection strings, using properties and methods of the class. Построитель строк подключения предоставляет строго типизированные свойства, соответствующие известным парам "ключ-значение", разрешенным OLE DB соединениями, и разработчики могут добавлять произвольные пары "ключ-значение" для любых других значений строк подключения.The connection string builder provides strongly typed properties corresponding to the known key/value pairs allowed by OLE DB connections, and developers can add arbitrary key/value pairs for any other connection string values. Класс OleDbConnectionStringBuilder реализует интерфейс ICustomTypeDescriptor.The OleDbConnectionStringBuilder class implements the ICustomTypeDescriptor interface. Это означает, что класс работает с конструкторами Visual Studio .NET во время разработки.This means that the class works with Visual Studio .NET designers at design time. Когда разработчики используют конструктор для создания строго типизированных наборов данных и строго типизированных соединений в Visual Studio .NET, строго типизированный класс построителя строк подключения будет отображать свойства, связанные с его типом, а также будет иметь преобразователи, которые могут сопоставлять общие значения для известных ключей.When developers use the designer to build strongly typed DataSets and strongly typed connections within Visual Studio .NET, the strongly typed connection string builder class will display the properties associated with its type and will also have converters that can map common values for known keys.

Разработчики, создающие строки подключения в рамках приложений, могут создавать и изменять строки подключения с помощью класса OleDbConnectionStringBuilder.Developers needing to create connection strings as part of applications can use the OleDbConnectionStringBuilder class to build and modify connection strings. Этот класс также облегчает управление строками подключения, хранимыми в файле конфигурации приложения.The class also makes it easy to manage connection strings stored in an application configuration file. OleDbConnectionStringBuilderВыполняет проверку только для ограниченного набора известных пар "ключ-значение".The OleDbConnectionStringBuilder performs checks only for the limited set of known key/value pairs. Поэтому этот класс можно использовать для создания недопустимых строк подключения.Therefore, this class can be used to create invalid connection strings. В следующей таблице перечислены известные ключи и соответствующие им свойства в OleDbConnectionStringBuilder классе, а также их значения по умолчанию.The following table lists the known keys and their corresponding properties within the OleDbConnectionStringBuilder class, and their default values. Помимо этих конкретных значений, разработчики могут добавить любые пары "ключ-значение" в коллекцию, содержащуюся в OleDbConnectionStringBuilder экземпляре:Besides these specific values, developers can add any key/value pairs to the collection that is contained within the OleDbConnectionStringBuilder instance:

КлючKey СвойствоProperty Значение по умолчаниюDefault value
Имя файлаFile Name FileName """"
ПоставщикProvider Provider """"
Источник данныхData Source DataSource """"
Сохранять сведения о безопасностиPersist Security Info PersistSecurityInfo НеверноFalse
Службы OLE DBOLE DB Services OleDbServices -13-13

Item[]Свойство обрабатывает попытки вставки вредоносных записей.The Item[] property handles attempts to insert malicious entries. Например, следующий код, используя свойство по умолчанию Item[] (индексатор, в C#), правильно поменяет escape-последовательность вложенной пары "ключ — значение":For example, the following code, using the default Item[] property (the indexer, in C#) correctly escapes the nested key/value pair:

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

Результатом является следующая строка подключения, в которой недопустимое значение обрабатывается безопасным образом:The result is the following connection string that handles the invalid value in a safe manner:

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Sample.mdb;User ID="Admin;NewValue=Bad"

Конструкторы

OleDbConnectionStringBuilder()

Инициализирует новый экземпляр класса OleDbConnectionStringBuilder.Initializes a new instance of the OleDbConnectionStringBuilder class.

OleDbConnectionStringBuilder(String)

Инициализирует новый экземпляр класса OleDbConnectionStringBuilder.Initializes a new instance of the OleDbConnectionStringBuilder class. Предоставленная строка подключения содержит данные для сведений о внутреннем подключении экземпляра.The provided connection string provides the data for the instance's internal connection information.

Свойства

BrowsableConnectionString

Возвращает или задает значение, указывающее, отображается ли свойство ConnectionString в конструкторах Visual Studio.Gets or sets a value that indicates whether the ConnectionString property is visible in Visual Studio designers.

(Унаследовано от DbConnectionStringBuilder)
ConnectionString

Возвращает или задает строку подключения, связанную с этим DbConnectionStringBuilder.Gets or sets the connection string associated with the DbConnectionStringBuilder.

(Унаследовано от DbConnectionStringBuilder)
Count

Возвращает текущее количество ключей, содержащихся в свойстве ConnectionString.Gets the current number of keys that are contained within the ConnectionString property.

(Унаследовано от DbConnectionStringBuilder)
DataSource

Возвращает или задает имя источника данных, к которому необходимо подключиться.Gets or sets the name of the data source to connect to.

FileName

Возвращает или задает имя UDL-файла для подключения к источнику данных.Gets or sets the name of the Universal Data Link (UDL) file for connecting to the data source.

IsFixedSize

Получает значение, показывающее, имеет ли объект DbConnectionStringBuilder фиксированный размер.Gets a value that indicates whether the DbConnectionStringBuilder has a fixed size.

(Унаследовано от DbConnectionStringBuilder)
IsReadOnly

Получает значение, указывающее, доступен ли объект DbConnectionStringBuilder только для чтения.Gets a value that indicates whether the DbConnectionStringBuilder is read-only.

(Унаследовано от DbConnectionStringBuilder)
Item[String]

Возвращает или задает значение, связанное с указанным ключом.Gets or sets the value associated with the specified key. В языке C# это свойство является индексатором.In C#, this property is the indexer.

Keys

Возвращает коллекцию ICollection, которая содержит ключи из OleDbConnectionStringBuilder.Gets an ICollection that contains the keys in the OleDbConnectionStringBuilder.

OleDbServices

Возвращает или задает значение, передаваемое в строку подключения для ключа служб OLE DB.Gets or sets the value to be passed for the OLE DB Services key within the connection string.

PersistSecurityInfo

Возвращает или задает логическое значение, которое определяет, возвращаются ли важнейшие сведения (такие как пароль) как часть подключения, если оно открыто или когда-либо находилось в открытом состоянии.Gets or sets a Boolean value that indicates whether security-sensitive information, such as the password, is returned as part of the connection if the connection is open or has ever been in an open state.

Provider

Возвращает или задает строку, которая содержит имя поставщика данных, связанного с внутренней строкой подключения.Gets or sets a string that contains the name of the data provider associated with the internal connection string.

Values

Получает ICollection, которая содержит значения в DbConnectionStringBuilder.Gets an ICollection that contains the values in the DbConnectionStringBuilder.

(Унаследовано от DbConnectionStringBuilder)

Методы

Add(String, Object)

Добавляет запись с указанными ключом и значением в DbConnectionStringBuilder.Adds an entry with the specified key and value into the DbConnectionStringBuilder.

(Унаследовано от DbConnectionStringBuilder)
Clear()

Удаляет содержимое экземпляра OleDbConnectionStringBuilder.Clears the contents of the OleDbConnectionStringBuilder instance.

ClearPropertyDescriptors()

Очищает коллекцию объектов PropertyDescriptor в связанном DbConnectionStringBuilder.Clears the collection of PropertyDescriptor objects on the associated DbConnectionStringBuilder.

(Унаследовано от DbConnectionStringBuilder)
ContainsKey(String)

Определяет, содержит ли объект OleDbConnectionStringBuilder указанный ключ.Determines whether the OleDbConnectionStringBuilder contains a specific key.

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.Determines whether the specified object is equal to the current object.

(Унаследовано от Object)
EquivalentTo(DbConnectionStringBuilder)

Сравнивает сведения о подключении в этом объекте DbConnectionStringBuilder со сведениями о подключении в предоставленном объекте.Compares the connection information in this DbConnectionStringBuilder object with the connection information in the supplied object.

(Унаследовано от DbConnectionStringBuilder)
GetHashCode()

Служит хэш-функцией по умолчанию.Serves as the default hash function.

(Унаследовано от Object)
GetProperties(Hashtable)

Заполняет указанный Hashtable сведениями обо всех свойствах данного DbConnectionStringBuilder.Fills a supplied Hashtable with information about all the properties of this DbConnectionStringBuilder.

(Унаследовано от DbConnectionStringBuilder)
GetType()

Возвращает объект Type для текущего экземпляра.Gets the Type of the current instance.

(Унаследовано от Object)
MemberwiseClone()

Создает неполную копию текущего объекта Object.Creates a shallow copy of the current Object.

(Унаследовано от Object)
Remove(String)

Удаляет из экземпляра OleDbConnectionStringBuilder запись с указанным ключом.Removes the entry with the specified key from the OleDbConnectionStringBuilder instance.

ShouldSerialize(String)

Указывает, существует ли заданный ключ в этом экземпляре DbConnectionStringBuilder.Indicates whether the specified key exists in this DbConnectionStringBuilder instance.

(Унаследовано от DbConnectionStringBuilder)
ToString()

Возвращает строку подключения, связанную с этим DbConnectionStringBuilder.Returns the connection string associated with this DbConnectionStringBuilder.

(Унаследовано от DbConnectionStringBuilder)
TryGetValue(String, Object)

Извлекает значение, соответствующее предоставляемому ключу из экземпляра OleDbConnectionStringBuilder.Retrieves a value corresponding to the supplied key from the OleDbConnectionStringBuilder instance.

Явные реализации интерфейса

ICollection.CopyTo(Array, Int32)

Копирует элементы коллекции ICollection в массив Array, начиная с указанного индекса массива Array.Copies the elements of the ICollection to an Array, starting at a particular Array index.

(Унаследовано от DbConnectionStringBuilder)
ICollection.IsSynchronized

Возвращает значение, показывающее, является ли доступ к коллекции ICollection синхронизированным (потокобезопасным).Gets a value indicating whether access to the ICollection is synchronized (thread safe).

(Унаследовано от DbConnectionStringBuilder)
ICollection.SyncRoot

Получает объект, с помощью которого можно синхронизировать доступ к коллекции ICollection.Gets an object that can be used to synchronize access to the ICollection.

(Унаследовано от DbConnectionStringBuilder)
ICustomTypeDescriptor.GetAttributes()

Возвращает коллекцию настраиваемых атрибутов для этого экземпляра компонента.Returns a collection of custom attributes for this instance of a component.

(Унаследовано от DbConnectionStringBuilder)
ICustomTypeDescriptor.GetClassName()

Возвращает имя класса для этого экземпляра компонента.Returns the class name of this instance of a component.

(Унаследовано от DbConnectionStringBuilder)
ICustomTypeDescriptor.GetComponentName()

Возвращает имя этого экземпляра компонента.Returns the name of this instance of a component.

(Унаследовано от DbConnectionStringBuilder)
ICustomTypeDescriptor.GetConverter()

Возвращает преобразователь типов для этого экземпляра компонента.Returns a type converter for this instance of a component.

(Унаследовано от DbConnectionStringBuilder)
ICustomTypeDescriptor.GetDefaultEvent()

Возвращает событие по умолчанию для этого экземпляра компонента.Returns the default event for this instance of a component.

(Унаследовано от DbConnectionStringBuilder)
ICustomTypeDescriptor.GetDefaultProperty()

Возвращает свойство по умолчанию для этого экземпляра компонента.Returns the default property for this instance of a component.

(Унаследовано от DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEditor(Type)

Возвращает редактор заданного типа для этого экземпляра компонента.Returns an editor of the specified type for this instance of a component.

(Унаследовано от DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEvents()

Возвращает события для этого экземпляра компонента.Returns the events for this instance of a component.

(Унаследовано от DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEvents(Attribute[])

Возвращает события для этого экземпляра компонента, используя заданный массив атрибутов в качестве фильтра.Returns the events for this instance of a component using the specified attribute array as a filter.

(Унаследовано от DbConnectionStringBuilder)
ICustomTypeDescriptor.GetProperties()

Возвращает свойства для этого экземпляра компонента.Returns the properties for this instance of a component.

(Унаследовано от DbConnectionStringBuilder)
ICustomTypeDescriptor.GetProperties(Attribute[])

Возвращает свойства для этого экземпляра компонента, используя массив атрибутов в качестве фильтра.Returns the properties for this instance of a component using the attribute array as a filter.

(Унаследовано от DbConnectionStringBuilder)
ICustomTypeDescriptor.GetPropertyOwner(PropertyDescriptor)

Возвращает объект, содержащий свойство, описываемое заданным дескриптором свойства.Returns an object that contains the property described by the specified property descriptor.

(Унаследовано от DbConnectionStringBuilder)
IDictionary.Add(Object, Object)

Добавляет элемент с указанными ключом и значением в объект IDictionary.Adds an element with the provided key and value to the IDictionary object.

(Унаследовано от DbConnectionStringBuilder)
IDictionary.Contains(Object)

Определяет, содержится ли элемент с указанным ключом в объекте IDictionary.Determines whether the IDictionary object contains an element with the specified key.

(Унаследовано от DbConnectionStringBuilder)
IDictionary.GetEnumerator()

Возвращает объект IDictionaryEnumerator для объекта IDictionary.Returns an IDictionaryEnumerator object for the IDictionary object.

(Унаследовано от DbConnectionStringBuilder)
IDictionary.IsFixedSize

Получает значение, показывающее, имеет ли объект IDictionary фиксированный размер.Gets a value indicating whether the IDictionary object has a fixed size.

(Унаследовано от DbConnectionStringBuilder)
IDictionary.IsReadOnly

Получает значение, указывающее, является ли объект IDictionary доступным только для чтения.Gets a value indicating whether the IDictionary is read-only.

(Унаследовано от DbConnectionStringBuilder)
IDictionary.Item[Object]

Возвращает или задает элемент с указанным ключом.Gets or sets the element with the specified key.

(Унаследовано от DbConnectionStringBuilder)
IDictionary.Remove(Object)

Удаляет элемент с указанным ключом из объекта IDictionary.Removes the element with the specified key from the IDictionary object.

(Унаследовано от DbConnectionStringBuilder)
IEnumerable.GetEnumerator()

Возвращает перечислитель, который осуществляет итерацию по коллекции.Returns an enumerator that iterates through a collection.

(Унаследовано от DbConnectionStringBuilder)

Методы расширения

Cast<TResult>(IEnumerable)

Приводит элементы объекта IEnumerable к заданному типу.Casts the elements of an IEnumerable to the specified type.

OfType<TResult>(IEnumerable)

Выполняет фильтрацию элементов объекта IEnumerable по заданному типу.Filters the elements of an IEnumerable based on a specified type.

AsParallel(IEnumerable)

Позволяет осуществлять параллельный запрос.Enables parallelization of a query.

AsQueryable(IEnumerable)

Преобразовывает коллекцию IEnumerable в объект IQueryable.Converts an IEnumerable to an IQueryable.

Применяется к

См. также раздел