DbConnectionStringBuilder.TryGetValue(String, Object) 메서드

정의

이 키에서 DbConnectionStringBuilder제공된 키에 해당하는 값을 검색합니다.

public:
 virtual bool TryGetValue(System::String ^ keyword, [Runtime::InteropServices::Out] System::Object ^ % value);
public virtual bool TryGetValue(string keyword, out 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

매개 변수

keyword
String

검색할 항목의 키입니다.

value
Object

에 해당하는 값입니다 keyword.

반품

연결 문자열 내에서 true 발견되면 keyword, 그렇지 않으면 false.

예외

keyword null 값(Visual Basic Nothing)을 포함합니다.

예제

다음 예제에서는 메서드를 TryGetValue 호출하여 몇 가지 가능한 결과를 보여 줍니다.

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

샘플은 다음 결과를 표시합니다.

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

설명

TryGetValue 메서드를 사용하면 개발자가 먼저 메서드를 호출 DbConnectionStringBuilder 할 필요 없이 a에서 ContainsKey 값을 안전하게 검색할 수 있습니다. TryGetValue 존재하지 않는 키를 전달하여 호출할 때 예외가 발생하지 않으므로 해당 값을 검색하기 전에 키를 찾을 필요가 없습니다. 존재하지 않는 키를 사용하여 TryGetValue 호출하면 null 값(Visual Basic Nothing)이 value 매개 변수에 배치됩니다.

적용 대상

추가 정보