条件这是我的代码:我设置的参数如何基于使用LINQ和Entity Framework
await ctx.Education.AsNoTracking()
.Where(e => e.EmployeeNumber == employeeNumber)
.Select(e => new EducationDTO {
Id = e.EducationID,
StartDate = DbFunctions.CreateDateTime(e.EducationEntryYear , 1, 1, 0, 0, 0) ?? DateTime.Now,
EndDate = DbFunctions.CreateDateTime(e.EducationGraduationYear, 1, 1, 0, 0, 0),
})
.ToListAsync().ConfigureAwait(false);
在某些情况下,“e.EducationEntryYear”为0,结果返回此异常Conversion failed when converting date and/or time from character string.
什么是有第一个参数作为本年度最简单的方法,如果e.EducationEntryYear
是0
替换它与'e.EducationEntryYear == 0只需更换'e.EducationEntryYear'? DateTime.Now.Year:e.EducationEntryYear' – itsme86
你有没有试过e.EducationEntryYear> 0?e.EducationEntryYear:2016? –
您必须先将DateTime.Now.Year保存到变量中 –