#c_sharp #преобразование #типы
Есть поле класса типа double?, то есть оно может и не содержать значения.
А я в своем классе использую просто double.
Как сделать преобразование?
И как быть с DateTime? -> DateTime
Ответы
Ответ 1
Если вы уверены, что значение там есть, вы можете получить его так: double? nd = ...; double v = nd.Value; Если не уверены, вам придётся сначала проверить: double? nd = ...; if (nd == null) { // значения нет, обрабатываем этот случай } else { // значение есть double d = nd.Value; // работаем с ним } Для случая, когда для отсутствующего значения подойдёт, например, 0.0, можно написать просто так: double d = nd ?? 0.0; Но как именно правильно реагировать на отсутствующее значение, решать только вам.Ответ 2
Ну можно что-нибудь вот такое например: double val = nullableDouble.HasValue ? nullableDouble.Value : 0.0;
Комментариев нет:
Отправить комментарий