OdbcConnectionStringBuilder.TryGetValue(String, Object) メソッド

定義

提供されたキーに対応する値をこの OdbcConnectionStringBuilder から取得します。

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

次の例では、 メソッドの動作を TryGetValue 示します。

using System.Data.Odbc;

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

        // Call TryGetValue method for multiple
        // key names. Demonstrate that the search is not
        // case sensitive.
        DisplayValue(builder, "Driver");
        DisplayValue(builder, "SERVER");
        // How about a property you did not set?
        DisplayValue(builder, "DNS");
        // Invalid keys?
        DisplayValue(builder, "Invalid Key");
        // Null values?
        DisplayValue(builder, null);

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

    private static 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 "Driver={SQL Server};Server=(local);" +
            "Database=AdventureWorks;Trusted_Connection=yes;";
    }

    private static void DisplayValue(OdbcConnectionStringBuilder 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 ex)
        {
            Console.WriteLine("Unable to retrieve value for null key.");
        }
    }
}
Imports System.Data.Odbc
    
Module Module1

  Sub Main()
    Dim builder As New OdbcConnectionStringBuilder
    builder.ConnectionString = GetConnectionString()

    ' Call TryGetValue method for multiple
    ' key names. Demonstrate that the search is not
    ' case sensitive.
    DisplayValue(builder, "Driver")
    DisplayValue(builder, "SERVER")
    ' How about a property you did not set?
    DisplayValue(builder, "DNS")
    ' 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 OdbcConnectionStringBuilder, 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 "Driver={SQL Server};Server=(local);" & _
      "Database=AdventureWorks;Trusted_Connection=yes;"
  End Function
End Module

注釈

開発者は、TryGetValue メソッドを使用すると、OdbcConnectionStringBuilder から安全に値を取得できます。提供されたキー名が有効なキー名であるかどうかを確認する必要はありません。 TryGetValue存在しないキーを渡しても例外が発生しないため、値を取得する前にキーを検索する必要はありません。 存在しないキーを使用して を呼び出すと TryGetValue 、 パラメーターに null (Nothing Visual Basic の場合) の値が value 格納されます。

適用対象

こちらもご覧ください