【发布时间】:2020-11-02 17:39:46
【问题描述】:
我收到了这个错误:
System.NotSupportedException: 'LINQ to Entities 无法识别 方法'System.String ToString(System.String)'
method,并且这个方法不能翻译成store 表达。'
代码如下:
var search = filter.getFilterValueFor("StartDate", "eq");
query = query.Where(it => it.it.it.ne.newWo.wo.STRT_DT.GetValueOrDefault().ToString("dd/MM/yyyy").Contains(search));
var total = query.Count();
如何解决这个错误?谢谢。
【问题讨论】:
-
搜索值:Thu Apr 30 2020 00:00:00 GMT+0800
-
OK - 这是搜索日期的错误方式。您应该创建一个
DateTime变量并填充它。然后使用query = query.Where(it => it.it.it.ne.newWo.wo.STRT_DT == yourNewDateVariable); var total = query.Count(); -
添加到@mjwills 的评论中,如果需要,我建议使用DbFunctions 来操作查询。 TruncateTime 可用于在不涉及时间的情况下比较日期。
-
我反对亲自这样做(即,如果您想删除时间,我会检查它是否 >= 您感兴趣的一天的开始和
-
我的想法在@rocky3 上奏效了吗?
标签: c# entity-framework linq