在linq查询中仅从日期时间获取时间值

时间:2019-06-03 10:55:40

标签: c# entity-framework linq model-view-controller

我在Entity Framework 6中有此LINQ查询:包含日期时间,我只想获取时间值

我试图使用TimeOfDay或Value.ToShortTimeString来获取ChickinTime和CheckOutTime的值,但它捕获了

List<GetAttendanceViewModel> List = (from R in database.Employee
                                 where R.EmployeeID == empID
                                 join EmpAtt in database.EmployeeAttendance on R.EmployeeFingerPrint equals EmpAtt.ACNo
                                 into g
                                 from EmpAtt in g.DefaultIfEmpty()
                                 where EmpAtt.Time.Value.Month == month && EmpAtt.Time.Value.Year == year 
                                 select new GetAttendanceViewModel
                                 {
                                     EmployeeID = empID,
                                     EmployeeName = R.EmployeeName,
                                     ChickinTime = DateTime.TryParseExact(EmpAtt.Time.Value.ToShortTimeString()), // EmpAtt.Time.Value.TimeOfDay,
                                     CheckOutTime = EmpAtt.Time.Value.ToShortTimeString(),
                                     AttendanceDate = EmpAtt.Time.Value.Date,
                                 }).ToList();

使用TimeOfDay的异常: LINQ不支持指定的类型成员'TimeOfDay', 使用TimeOfDay Value.ToShortTimeString的异常: 无法将类型'string'隐式转换为'System.DateTime吗?'

0 个答案:

没有答案