如何强制转换为System.Timespan?

Dar*_*ter 0 c# visual-studio-2010

谁能告诉我如何投射System.Timespan?到System.Timespan我在尝试从linq查询获取当前日期和日期之间的日期差异时一直收到此错误(参见belwo)

System.TimeSpan ts = i.joinDt - DateTime.Now.Date;
Run Code Online (Sandbox Code Playgroud)

Ode*_*ded 6

要获得a TimeSpan,TimeSpan?你需要访问Value可空的属性 - 无需强制转换.

TimeSpan? tsn = i.joinDt - DateTime.Now.Date;
TimeSpan ts;
if(tsn.HasValue)
{
  ts = tsn.Value;
}
Run Code Online (Sandbox Code Playgroud)

要么:

if(i.joinDt.HasValue)
{
  TimeSpan ts = i.joinDt.Value - DateTime.Now.Date;
}
Run Code Online (Sandbox Code Playgroud)


Bal*_*a R 6

System.TimeSpan ts = (i.joinDt - DateTime.Now.Date).Value;
Run Code Online (Sandbox Code Playgroud)