Linq to Sql outer加入Timespan

时间:2011-03-21 07:22:43

标签: c# linq-to-sql

我正在使用L2S,我必须在右表中使用VisitFromTime和VisitToTime值执行一个左外连接。代码看起来像

from d in db.Doctors
join p in db.plans on d.DoctorID equals p.DoctorID
into temp
from t in temp.DefaultIfEmpty()
select new MyModel
{
   ....
   ....
   VisitTimeFrom = t!=null?t.VisitTimeFrom:new TimeSpan(),
   VisitTimeTo = t!=null?t.VisitTimeTo:new TimeSpan()
}

它给了我运行时异常,在sql

中不支持从bigint到time的显式转换

2 个答案:

答案 0 :(得分:0)

是数据库中的VisitTimeFrom和VisitTimeTo bigint吗?

如果你肯定想要

VisitTimeFrom = t!=null?t.VisitTimeFrom:0,
VisitTimeTo = t!=null?t.VisitTimeTo:0

答案 1 :(得分:0)

确保t.VisitTimeFromt.VisitTimeTo都是时间跨度。