DbConnectionStringBuilder.TryGetValue(String, Object) Metodo

Definizione

Recupera un valore corrispondente alla chiave fornita da questo DbConnectionStringBuilderoggetto .

public:
 virtual bool TryGetValue(System::String ^ keyword, [Runtime::InteropServices::Out] System::Object ^ % value);
public virtual bool TryGetValue(string keyword, out object value);
abstract member TryGetValue : string * obj -> bool
override this.TryGetValue : string * obj -> bool
Public Overridable Function TryGetValue (keyword As String, ByRef value As Object) As Boolean

Parametri

keyword
String

Chiave dell'elemento da recuperare.

value
Object

Valore corrispondente all'oggetto keyword.

Valori restituiti

true se keyword è stato trovato all'interno del stringa di connessione, false in caso contrario.

Eccezioni

keyword contiene un valore Null (Nothing in Visual Basic).

Esempio

Nell'esempio seguente viene chiamato il TryGetValue metodo , che illustra diversi risultati possibili.

static void Main()
{
    DbConnectionStringBuilder builder = new DbConnectionStringBuilder();
    builder.ConnectionString =
        "Provider=sqloledb;Data Source=192.168.168.1,1433;" +
        "Network Library=DBMSSOCN;Initial Catalog=pubs;" +
        "Integrated Security=SSPI;";

    // Call TryGetValue method for multiple
    // key names.
    DisplayValue(builder, "Provider");
    DisplayValue(builder, "DATA SOURCE");
    DisplayValue(builder, "InvalidKey");
    DisplayValue(builder, null);

    Console.ReadLine();
}

private static void DisplayValue(
    DbConnectionStringBuilder builder, string key)
{
    object value = null;

    // Although TryGetValue handles missing keys,
    // it doesn't handle passing in a null
    // key. This example traps for that particular error, but
    // bubbles any other unknown exceptions back out to the
    // caller.
    try
    {
        if (builder.TryGetValue(key, out value))
        {
            Console.WriteLine("{0}={1}", key, value);
        }
        else
        {
            Console.WriteLine(@"Unable to retrieve value for '{0}'", key);
        }
    }
    catch (ArgumentNullException)
    {
        Console.WriteLine("Unable to retrieve value for null key.");
    }
}
Sub Main()
    Dim builder As New DbConnectionStringBuilder
    builder.ConnectionString = "..."

    ' Call TryGetValue method for multiple key names.
    DisplayValue(builder, "Provider")
    DisplayValue(builder, "DATA SOURCE")
    DisplayValue(builder, "InvalidKey")
    DisplayValue(builder, Nothing)

    Console.ReadLine()
End Sub

Private Sub DisplayValue( _
 ByVal builder As DbConnectionStringBuilder, ByVal key As String)
    Dim value As Object

    ' Although TryGetValue handles missing keys,
    ' it doesn't handle passing in a null (Nothing in Visual Basic)
    ' key. This example traps for that particular error, but
    ' bubbles any other unknown exceptions back out to the caller.
    Try
        If builder.TryGetValue(key, value) Then
            Console.WriteLine("{0}={1}", key, value)
        Else
            Console.WriteLine("Unable to retrieve value for '{0}'", key)
        End If
    Catch ex As ArgumentNullException
        Console.WriteLine("Unable to retrieve value for null key.")
    End Try
End Sub

Nell'esempio vengono visualizzati i risultati seguenti:

Provider=sqloledb
DATA SOURCE=192.168.168.1,1433
Unable to retrieve value for //InvalidKey//
Unable to retrieve value for null key.

Commenti

Il TryGetValue metodo consente agli sviluppatori di recuperare in modo sicuro un valore da un oggetto DbConnectionStringBuilder senza dover prima chiamare il ContainsKey metodo . Poiché TryGetValue non genera un'eccezione quando la si chiama, passando una chiave inesistente, non è necessario cercare una chiave prima di recuperarne il valore. La chiamata di TryGetValue con una chiave inesistente inserisce il valore Null (Nothing in Visual Basic) nel parametro value.

Si applica a

Vedi anche