다음을 통해 공유


OleDbConnectionStringBuilder.TryGetValue(String, Object) 메서드

정의

제공된 키에 해당하는 값을 OleDbConnectionStringBuilder 인스턴스에서 검색합니다.

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

매개 변수

keyword
String

검색할 항목의 키입니다.

value
Object

keyword에 해당하는 값입니다.

반환

keyword가 연결 문자열에 있으면 true이고, 없으면 false입니다.

예외

keyword에 null 값(Visual Basic에서는 Nothing)이 포함된 경우

예제

다음 예제에서는 동작을 보여 줍니다.는 TryGetValue 메서드.

using System.Data.OleDb;

class Program
{
    static void Main()
    {
        OleDbConnectionStringBuilder builder =
            new OleDbConnectionStringBuilder();
        builder.ConnectionString = GetConnectionString();

        // Call TryGetValue method for multiple
        // key names.
        DisplayValue(builder, "Data Source");
        DisplayValue(builder, "Extended Properties");
        // How about implicitly added key/value pairs?
        DisplayValue(builder, "Jet OLEDB:System database");
        // Invalid keys?
        DisplayValue(builder, "Invalid Key");
        // Null values?
        DisplayValue(builder, null);

        Console.WriteLine("Press any key to continue.");
        Console.ReadLine();
    }

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

        // Although TryGetValue handles missing keys,
        // it does not handle passing in a null (Nothing in Visual Basic)
        // key. This example traps for that particular error, but
        // throws 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.");
        }
    }

    static private string GetConnectionString()
    {
        // To avoid storing the connection string in your code,
        // you can retrieve it from a configuration file using the
        // System.Configuration.ConfigurationSettings.AppSettings property.
        return "Provider=Microsoft.Jet.OLEDB.4.0;" +
            "Data Source=C:\\ExcelDemo.xls;" +
            "Extended Properties=\"Excel 8.0;HDR=Yes;IMEX=1\"";
    }
}
Imports System.Data.OleDb    

Module Module1
  Sub Main()
    Dim builder As New OleDbConnectionStringBuilder
    builder.ConnectionString = GetConnectionString()

    ' Call TryGetValue method for multiple
    ' key names. 
    DisplayValue(builder, "Data Source")
    DisplayValue(builder, "Extended Properties")
    ' How about implicitly added key/value pairs?
    DisplayValue(builder, "Jet OLEDB:System database")
    ' Invalid keys?
    DisplayValue(builder, "Invalid Key")
    ' Null values?
    DisplayValue(builder, Nothing)

    Console.WriteLine("Press any key to continue.")
    Console.ReadLine()
  End Sub

  Private Sub DisplayValue( _
   ByVal builder As OleDbConnectionStringBuilder, ByVal key As String)
    Dim value As Object = Nothing

    ' Although TryGetValue handles missing keys,
    ' it does not handle passing in a null (Nothing in Visual Basic)
    ' key. This example traps for that particular error, but
    ' throws 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

  Private Function GetConnectionString() As String
    ' To avoid storing the connection string in your code,
    ' you can retrieve it from a configuration file using the 
    ' System.Configuration.ConfigurationSettings.AppSettings property. 
    Return "Provider=Microsoft.Jet.OLEDB.4.0;" & _
      "Data Source=C:\ExcelDemo.xls;" & _
      "Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1"""
  End Function
End Module

설명

TryGetValue 메서드를 사용하면 제공된 키 이름이 올바른 키 이름인지 확인하지 않고도 OleDbConnectionStringBuilder에서 값을 안전하게 검색할 수 있습니다. 때문에 TryGetValue 예외가 발생 하지 않으므로 호출 하기, 존재 하지 않는 키를 전달 하는 경우 해당 값을 검색 하기 전에 키를 찾이 필요가 없습니다. 호출 TryGetValue 존재 하지 않는 키를 사용 하 여 null 값을 배치 됩니다 (Nothing Visual Basic에서)에 value 매개 변수입니다.

적용 대상

추가 정보