OleDbConnectionStringBuilder.TryGetValue(String, Object) Método

Definição

Recupera um valor correspondente à chave fornecida da instância 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

Parâmetros

keyword
String

A chave do item a ser recuperada.

value
Object

O valor correspondente a keyword.

Retornos

true se keyword tiver sido encontrado na cadeia de conexão, caso contrário, false.

Exceções

keyword contém um valor nulo (Nothing no Visual Basic).

Exemplos

O exemplo a seguir demonstra o comportamento do TryGetValue método .

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

Comentários

O TryGetValue método permite que os desenvolvedores recuperem com segurança um valor de um OleDbConnectionStringBuilder sem a necessidade de verificar se o nome da chave fornecida é um nome de chave válido. Como TryGetValue não gera uma exceção quando você a chama, passando uma chave inexistente, você não precisa procurar uma chave antes de recuperar seu valor. Chamar TryGetValue com uma chave inexistente colocará o valor nulo (Nothing no Visual Basic) no value parâmetro .

Aplica-se a

Confira também