OleDbConnectionStringBuilder.Item[String] Egenskap

Definition

Hämtar eller anger värdet som är associerat med den angivna nyckeln. I C# är den här egenskapen indexeraren.

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

Parametrar

keyword
String

Nyckeln för objektet som ska hämtas eller anges.

Egenskapsvärde

Värdet som är associerat med den angivna nyckeln.

Undantag

Connection string är felaktigt formaterad (kanske saknas det obligatoriska "=" i ett nyckel/värde-par).

keyword är en nullreferens (Nothing i Visual Basic).

Exempel

I följande exempel används Item[] egenskapen (indexeraren i C#) för att hämta och ange värden i samlingen med nyckel-/värdepar. Observera att inställningen av providern i det här fallet även innehåller standardvärden för alla nyckel/värde-par som är associerade med den valda providern.

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: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: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

Kommentarer

Eftersom inställningen Provider av egenskapen kan lägga till motsvarande objekt i samlingen med nyckel/värde-par (beroende på beteendet hos den specifika providern) kanske du kan hämta ett värde för en nyckel som du inte uttryckligen har angett. Så fort du till exempel har angett Provider egenskapen till "sqloledb" kan du hämta värdet "Arbetsstations-ID" även om du inte har angett det själv. Se exemplet i det här avsnittet för en demonstration.

Gäller för

Se även