Keys Property

DbConnectionStringBuilder.Keys Property

 

Gets an ICollection that contains the keys in the DbConnectionStringBuilder.

Namespace:   System.Data.Common
Assembly:  System.Data (in System.Data.dll)

[BrowsableAttribute(false)]
public virtual ICollection Keys { get; }

Property Value

Type: System.Collections.ICollection

An ICollection that contains the keys in the DbConnectionStringBuilder.

The order of the values in the ICollection is unspecified, but it is the same order as the associated values in the ICollection returned by the Values property.

The returned ICollection is not a static copy; instead, the ICollection refers back to the keys in the original DbConnectionStringBuilder. Therefore, changes to the DbConnectionStringBuilder are reflected in the ICollection.

The following console application example creates a new DbConnectionStringBuilder, and adds some keys. The code loops through the ICollection returned by the Keys property displaying the key/value pairs, and then adds a new key. Because the Keys property returns a dynamic ICollection, the second loop displays all the key/value pairs, including the newest item.

static void Main()
{
    DbConnectionStringBuilder builder = new
        DbConnectionStringBuilder();
    builder["Data Source"] = "(local)";
    builder["Integrated Security"] = true;
    builder["Initial Catalog"] = "AdventureWorks";

    // Obtain reference to the collection of keys.
    ICollection keys = builder.Keys;

    Console.WriteLine("Keys before adding TimeOut:");
    foreach (string key in keys)
        Console.WriteLine("{0}={1}", key, builder[key]);

    // Add a new item to the collection.
    builder["Timeout"] = 300;

    Console.WriteLine();
    Console.WriteLine("Keys after adding TimeOut:");

    // Because the Keys property is dynamically updated, 
    // the following loop includes the Timeout key.
    foreach (string key in keys)
        Console.WriteLine("{0}={1}", key, builder[key]);
    Console.WriteLine();
    Console.WriteLine("Press Enter to continue.");
    Console.ReadLine();
}

Universal Windows Platform
Available since 10
.NET Framework
Available since 2.0
Return to top
Show:
© 2016 Microsoft