我要实现的是获取从日期时间传递到当前日期时间的年份。
DateTime zeroTime = new DateTime(1, 1, 1);
DateTime now = DateTime.Now;
TimeSpan span = project.StartDate != null ? now - project.StartDate : TimeSpan.Zero;
int years = (zeroTime + span).Year - 1;
project.StartDate
是可为空的,所以我尝试使用project.StartDate.HasValue
等条件。我仍然遇到错误:Cannot implicitly convert 'System.TimeSpan?' to 'System.TimeSpan'
我想念的是什么,我浏览过,然后在Google上搜索,所以请不要将其标记为重复项,因为您会看到我已经使用过的条件
最佳答案
这应该工作。使用null-coalescing operator
TimeSpan span = (now - project.StartDate) ?? TimeSpan.Zero;
关于c# - 无法隐式转换“System.TimeSpan?”具有.HasValue条件的“System.TimeSpan”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41221694/