如何在LINQ中使用DATEADD over column – LINQ无法识别DateAdd
我试图使不到30天前被请求的友谊请求无效。
var requestIgnored = context.Request .Where(c => c.IdRequest == result.IdRequest && c.IdRequestTypes == 1 && c.Accepted == false && DateTime.Now <= (((DateTime)c.DateResponse).AddDays(30))) .SingleOrDefault();
c.DateResponse
的类型是DateTime?
。 我遇到的错误是:
LINQ无法识别命令.AddDays
编辑:如果您使用的是EntityFramework> = 6.0,请使用DbFunctions.AddDays
。 对于旧版本的Entity Framework,请使用EntityFunctions.AddDays
:
var requestIgnored = context.Request .Where(c => c.IdRequest == result.IdRequest && c.IdRequestTypes == 1 && c.Accepted == false && DateTime.Now <= DbFunctions.AddDays(c.DateResponse, 30)) .SingleOrDefault();
你可以试试这个:
上述就是C#学习教程:如何在LINQ中使用DATEADD over column – LINQ无法识别DateAdd分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注---计算机技术网(www.ctvol.com)!
var thirtyDaysAgo = DateTime.Now.AddDays(-30); var requestIgnored = context.Request .Where(c => c.IdRequest == result.IdRequest && c.IdRequestTypes == 1 && c.Accepted == false && c.DateResponse.HasValue && thirtyDaysAgo <= c.DateResponse.Value) .SingleOrDefault();
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/1016565.html