Книга: ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание
Работа с типами, для которых допустимы значения null
Работа с типами, для которых допустимы значения null
Типы с разрешением принимать значение null могут оказаться исключительно полезными при взаимодействии с базами данных, где столбцы в таблице могут оказаться пустыми (т.е., неопределенными). Для примера рассмотрим следующий класс, моделирующий доступ к базе данных с таблицей, два столбца которой могут оставаться неопределенными. Обратите внимание на то, что здесь метод GetIntFromDatabase() не присваивает значение члену-переменной целочисленного типа с разрешенным значением null, в то время как GetBoolFromDatabase() назначает подходящее значение члену bool?.
Class DatabaseReader {
// Поле данных с разрешением значения null.
public int? numbericValue;
public bool? boolValue = true;
// Обратите внимание на разрешение null для возвращаемого типа.
public int? GetIntFromDatabase() {return numberiсVаlue;}
// Обратите внимание на разрешение null для возвращаемого типа.
public bool? GetBoolFromDatabase() {return boolValue;}
}
Теперь рассмотрим следующий метод Main(), вызывающий члены класса DatabaseReader и демонстрирующий присвоенные им значения с помощью HasValue и Value в соответствии с синтаксисом C#.
static void Main(string[] args) {
Console.WriteLine("***** Забавы с разрешением null *****n")
DatabaseReader dr = new DatabaseReader();
// Получение int из 'базы данных'.
int? i = dr.GetIntFromDatabase();
if (i.HasValue) Console.WriteLine("Значение 'i' равно: {0}", i);
else Console.WriteLine("Значение 'i' не определено.");
// Получение bool из 'базы данных'.
bool? b = dr.GetBoolFromDatabase();
if (b != null) Console.WriteLine("Значение 'b' равно: {0}", b);
else Console.WriteLine("Значение 'b' не определено.");
Console.ReadLine();
}
- Типы с разрешением принимать значение null
- Практическая работа 53. Запуск Access. Работа с объектами базы данных
- Лекция 15. Работа с базами данных
- Работа с ресурсами локальной сети
- Эффективная работа с временными файлами сортировки
- Ускоренная работа с индексами
- HR-брендинг: Работа с поколением Y, новые инструменты для коммуникации, развитие корпоративной культуры и еще 9 эффектив...
- Выражения в значениях по умолчанию для доменов
- Значения переменных по умолчанию
- Безопасная работа с внешними таблицами
- Работа со строками
- Использование CAST() с типами дата