OleDbConnectionStringBuilder.Item[String] Свойство

Определение

Возвращает или задает значение, связанное с указанным ключом. В языке C# это свойство является индексатором.

public:
 virtual property System::Object ^ default[System::String ^] { System::Object ^ get(System::String ^ keyword); void set(System::String ^ keyword, System::Object ^ value); };
public override object this[string keyword] { get; set; }
member this.Item(string) : obj with get, set
Default Public Overrides Property Item(keyword As String) As Object

Параметры

keyword
String

Ключ возвращаемого или задаваемого элемента.

Значение свойства

Значение, связанное с указанным ключом.

Исключения

Строка подключения неправильно отформатирована (возможно отсутствует обязательный знак равенства "=" в паре "ключ/значение").

Параметр keyword является неопределенной ссылкой (Nothing в Visual Basic).

Примеры

В следующем примере свойство (индексатор в C#) используется Item[] для получения и задания значений в коллекции пар "ключ-значение". Обратите внимание, что установка поставщика в этом случае также предоставляет значения по умолчанию для всех пар "ключ-значение", связанных с выбранным поставщиком.

using System.Data.OleDb;

class Program
{
    static void Main()
    {
        OleDbConnectionStringBuilder builder = new OleDbConnectionStringBuilder();
        builder.Provider = "Microsoft.Jet.Oledb.4.0";
        builder.DataSource = @"C:\Sample.mdb";
        // Set properties using the Item property (the indexer, in C#).
        builder["Jet OLEDB:Database Password"] = "DataPassword";
        builder["Jet OLEDB:Encrypt Database"] = true;
        builder["Jet OLEDB:System database"] = @"C:\Workgroup.mdw";

        Console.WriteLine(builder.ConnectionString);
        Console.WriteLine();

        // Use the Item property to retrieve values as well.
        Console.WriteLine(builder["Jet OLEDB:System database"]);
        Console.WriteLine(builder["Jet OLEDB:Encrypt Database"]);

        // You can set or retrieve any of the "default" values for the
        // provider, even if you didn't set their values.
        Console.WriteLine(builder["Jet OLEDB:Database Locking Mode"]);
        Console.WriteLine(builder["Jet OLEDB:Global Partial Bulk Ops"]);

        Console.WriteLine("Press Enter to continue.");
        Console.ReadLine();
    }
}
Imports System.Data.OleDb    

Module Module1
  Sub Main()
    Dim builder As New OleDbConnectionStringBuilder
    builder.Provider = "Microsoft.Jet.Oledb.4.0"
    builder.DataSource = "C:\Sample.mdb"
    ' Set properties using the Item property.
    builder.Item("Jet OLEDB:Database Password") = "DataPassword"
    builder.Item("Jet OLEDB:Encrypt Database") = True

    ' Because Item is the default property, you can leave out
    ' the explicit reference.
    builder("Jet OLEDB:System database") = "C:\Workgroup.mdw"

    Console.WriteLine(builder.ConnectionString)
    Console.WriteLine()

    ' Use the Item property to retrieve values, as well.
    Console.WriteLine(builder.Item("Jet OLEDB:System database"))
    Console.WriteLine(builder("Jet OLEDB:Encrypt Database"))

    ' You can set or retrieve any of the "default" values for the 
    ' provider, as well, even if you did not set their values. Again, 
    ' explicitly specifying the Item property name is optional.
    Console.WriteLine(builder.Item("Jet OLEDB:Database Locking Mode"))
    Console.WriteLine(builder("Jet OLEDB:Global Partial Bulk Ops"))

    Console.WriteLine("Press Enter to continue.")
    Console.ReadLine()
  End Sub
End Module

Комментарии

Поскольку задание Provider свойства может добавить соответствующие элементы в коллекцию пар "ключ-значение" (в зависимости от поведения конкретного поставщика), вы можете получить значение для ключа, который не задан явно. Например, как только вы задали Provider для свойства значение "sqloledb", вы можете получить значение "Идентификатор рабочей станции", даже если вы не задали его самостоятельно. Демонстрацию см. в примере в этом разделе.

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

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