SqlConnectionStringBuilder.TryGetValue(String, Object) Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Retrieves a value corresponding to the supplied key from this SqlConnectionStringBuilder.
public:
override bool TryGetValue(System::String ^ keyword, [Runtime::InteropServices::Out] System::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
Parameters
- keyword
- String
The key of the item to retrieve.
- value
- Object
The value corresponding to keyword
.
Returns
true
if keyword
was found within the connection string; otherwise, false
.
Exceptions
keyword
contains a null value (Nothing
in Visual Basic).
Examples
The following example demonstrates the behavior of the TryGetValue method.
using System.Data.SqlClient;
using System;
using System.Data.SqlClient;
class Program
{
static void Main()
{
SqlConnectionStringBuilder builder = new SqlConnectionStringBuilder();
builder.ConnectionString = GetConnectionString();
// Call TryGetValue method for multiple
// key names. Note that these keys are converted
// to well-known synonynms for data retrieval.
DisplayValue(builder, "Data Source");
DisplayValue(builder, "Trusted_Connection");
DisplayValue(builder, "InvalidKey");
DisplayValue(builder, null);
Console.WriteLine("Press any key to continue.");
Console.ReadLine();
}
private static void DisplayValue(
SqlConnectionStringBuilder 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
// passes 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.");
}
}
private static string GetConnectionString()
{
// To avoid storing the connection string in your code,
// you can retrieve it from a configuration file.
return "Server=(local);Integrated Security=SSPI;" +
"Initial Catalog=AdventureWorks";
}
}
Imports System.Data.SqlClient
Module Module1
Sub Main()
Dim builder As New SqlConnectionStringBuilder
builder.ConnectionString = GetConnectionString()
' Call TryGetValue method for multiple
' key names. Note that these keys are converted
' to well-known synonynms for data retrieval.
DisplayValue(builder, "Data Source")
DisplayValue(builder, "Trusted_Connection")
DisplayValue(builder, "InvalidKey")
DisplayValue(builder, Nothing)
Console.WriteLine("Press any key to continue.")
Console.ReadLine()
End Sub
Private Sub DisplayValue( _
ByVal builder As SqlConnectionStringBuilder, ByVal key As String)
Dim value As Object = Nothing
' 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
' passes 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.
Return "Server=(local);Integrated Security=SSPI;" & _
"Initial Catalog=AdventureWorks"
End Function
End Module
The sample displays the following results:
Data Source=(local)
Trusted_Connection=True
Unable to retrieve value for 'InvalidKey'
Unable to retrieve value for null key.
Remarks
The TryGetValue method lets developers safely retrieve a value from a SqlConnectionStringBuilder without needing to verify that the supplied key name is a valid key name. Because TryGetValue does not raise an exception when you call it, passing in a nonexistent key, you do not have to look for a key before retrieving its value. Calling TryGetValue with a nonexistent key will place the value null (Nothing
in Visual Basic) in the value
parameter.