простой вопрос по C#

Ответить
Аватара пользователя
sergNN
Сообщения: 2695
Зарегистрирован: 23.09.2011 21:50

простой вопрос по C#

Сообщение sergNN »

вот есть
DateTime pStichtag, DateTime? pCalcDate, DateTime buchungsTagMatch

почему

Код: Выделить всё

DateTime buchungsTagMatch = pCalcDate.HasValue ? pCalcDate.Value : pStichtag;
или

Код: Выделить всё

DateTime  buchungsTagMatch = (null != pCalcDate) ? pCalcDate.Value : pStichtag;
не работает, зато вот это работает всегда:

Код: Выделить всё

if (null != pCalcDate)
{
  buchungsTagMatch = pCalcDate.Value;
}
else
{
  buchungsTagMatch = pStichtag;
}
не работает - значит в случае нулевого pCalcDate не присваивается pStichtag. Присваивается какая-то хрень по умолчанию.
Если йето было б так то счастливы те мужчины, только равнозначность в понимании таких как ты, отлично от реалий по совести. (c) проц
Аватара пользователя
Джимми
Сообщения: 8239
Зарегистрирован: 20.01.2012 16:02
Где: Одесса-Rheinbach

Re: простой вопрос по C#

Сообщение Джимми »

вроде все правильно
может pStichtag неправильно инициализирован
потому что Джим каждое утро делает зарядку
Аватара пользователя
sergNN
Сообщения: 2695
Зарегистрирован: 23.09.2011 21:50

Re: простой вопрос по C#

Сообщение sergNN »

это было б слишком просто...
С одними тест-данными проверял.
я сначала думал что я устал, позвал друга. теперь нас двое "уставших" :-)
чепуха какая-то...
Если йето было б так то счастливы те мужчины, только равнозначность в понимании таких как ты, отлично от реалий по совести. (c) проц
Аватара пользователя
Джимми
Сообщения: 8239
Зарегистрирован: 20.01.2012 16:02
Где: Одесса-Rheinbach

Re: простой вопрос по C#

Сообщение Джимми »

сделай декомпиляцию
ILSpy
потому что Джим каждое утро делает зарядку
Аватара пользователя
sergNN
Сообщения: 2695
Зарегистрирован: 23.09.2011 21:50

Re: простой вопрос по C#

Сообщение sergNN »

чтоб понять внутреннюю реализацию ?
Если йето было б так то счастливы те мужчины, только равнозначность в понимании таких как ты, отлично от реалий по совести. (c) проц
Igor V. Protsenko
Сообщения: 5902
Зарегистрирован: 28.05.2012 19:38

Re: простой вопрос по C#

Сообщение Igor V. Protsenko »

DateTime buchungsTagMatch = ((null != pCalcDate) && pCalcDate.HasValue) ? pCalcDate.Value : pStichtag;
Аватара пользователя
sergNN
Сообщения: 2695
Зарегистрирован: 23.09.2011 21:50

Re: простой вопрос по C#

Сообщение sergNN »

ха. ты расписал как надо писать, чтоб чисто работало присвоение pCalcDate,
а ты разъясни почему не работает присавоение pStichtag'a в случае когда pCalcDate есть NULL.
Если йето было б так то счастливы те мужчины, только равнозначность в понимании таких как ты, отлично от реалий по совести. (c) проц
Ответить