Share via


OleDbConnectionStringBuilder.TryGetValue(String, Object) Metode

Definisi

Mengambil nilai yang sesuai dengan kunci yang disediakan dari OleDbConnectionStringBuilder instans.

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

Parameter

keyword
String

Kunci item yang akan diambil.

value
Object

Nilai yang keywordsesuai dengan .

Mengembalikan

truejika keyword ditemukan dalam string koneksi; jika tidak, false.

Pengecualian

keyword berisi nilai null (Nothing dalam Visual Basic).

Contoh

Contoh berikut menunjukkan perilaku TryGetValue metode .

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

Keterangan

Metode ini TryGetValue memungkinkan pengembang mengambil nilai dengan aman dari OleDbConnectionStringBuilder tanpa perlu memverifikasi bahwa nama kunci yang disediakan adalah nama kunci yang valid. Karena TryGetValue tidak menimbulkan pengecualian saat Anda memanggilnya, meneruskan kunci yang tidak ada, Anda tidak perlu mencari kunci sebelum mengambil nilainya. Memanggil TryGetValue dengan kunci yang tidak ada akan menempatkan nilai null (Nothing di Visual Basic) dalam value parameter .

Berlaku untuk

Lihat juga