TimeSpan с помощью nullable даты

Вот как я это сделал:

[DatabaseGenerated(DatabaseGeneratedOption.Computed)]
public DateTime CreatedDate{ get; set; }

в методе Up () моей миграции:

AddColumn("Agents", "CreatedDate", n => n.DateTime(nullable: false, defaultValueSql: "GETUTCDATE()"));
10
задан JYelton 22 November 2011 в 21:11
поделиться

3 ответа

Попробуйте следующее:

weeksOnPlanSpan = DateTime.Now.Subtract(planStartDate.Value); 
11
ответ дан 3 December 2019 в 16:30
поделиться

Чтобы вычесть две даты, когда ноль, одна или обе из них допускают значение NULL , вы просто вычитаете их . Оператор вычитания поступает правильно; Вам не нужно самостоятельно писать всю логику, которая уже есть в операторе вычитания.

TimeSpan? timeOnPlan = DateTime.Now - user.PlanStartDate;
return timeOnPlan == null ? 0 : timeOnPlan.Days / 7;
13
ответ дан 3 December 2019 в 16:30
поделиться

Приведите дату-время, допускающую значение NULL, как обычную дату-время.

Если вы знаете, что это не NULL, приведение будет работает нормально.

1
ответ дан 3 December 2019 в 16:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: