TryGetValue
Метод предоставляет значение указанного ключа строки подключения.
Метод TryGetValue
позволяет безопасно извлекать значение ключа из строки подключения, не требуя предварительной проверки его существования в строке.
При запросе значения несуществующего ключа исключение не генерируется, для него возвращается null-значение.
Синтаксис
public override bool TryGetValue( string keyword, out Object value );
keyword
– имя ключа.
value
– возвращаемое текущее значение ключа в строке подключения.
Возвращаемое значение
Значение true, если ключевое слово keyword найдено в строке подключения, false – в противном случае.
Исключения
ArgumentNullException
| Null-значение параметра keyword. |
Пример
// C# using System; using System.Data; using System.Data.Common; class ConnectionStringBuilderSample { static void Main() { // Создание фабрики классов провайдера DbProviderFactory factory = DbProviderFactories.GetFactory("System.Data.LinterClient"); // Создание объекта DbConnectionStringBuilder DbConnectionStringBuilder builder = factory.CreateConnectionStringBuilder(); builder.ConnectionString = "Data Source=LOCAL;User ID=SYSTEM;Password=MANAGER8"; // Вызов метода TryGetValue для нескольких имен ключей. // Имена ключей конвертируются в синонимы. DisplayValue(builder, "Data Source"); DisplayValue(builder, "UID"); DisplayValue(builder, "InvalidKey"); DisplayValue(builder, null); Console.WriteLine(); Console.WriteLine("Нажмите клавишу Ввод для завершения"); Console.ReadLine(); } private static void DisplayValue(DbConnectionStringBuilder builder, string key) { object value = null; // Хотя метод TryGetValue нормально обрабатывает отсутствующие ключи, // он генерирует ошибку, если имя ключа равно null. Данный пример // перехватывает эту ошибку, но передает наверх любое другое исключение. try { if (builder.TryGetValue(key, out value)) { Console.WriteLine("{0}='{1}'", key, value); } else { Console.WriteLine("Нельзя получить значение для ключа '{0}'", key); } } catch (ArgumentNullException) { Console.WriteLine("Нельзя получить значение для ключа null"); } } } Результат выполнения примера: Data Source='LOCAL' UID='SYSTEM' Нельзя получить значение для ключа 'InvalidKey' Нельзя получить значение для ключа null