Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/257.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Linq到实体:无法转换为存储表达式_C# - Fatal编程技术网

C# Linq到实体:无法转换为存储表达式

C# Linq到实体:无法转换为存储表达式,c#,C#,我正在尝试执行此查询,但遇到一个错误:无法转换为存储表达式 如果我不能这样做,我如何实现它?我用的是C# 如果日期不是今年,我将尝试显示培训记录。非常感谢您的任何建议 tr = from l in t.Trainees where !db.UserTrainings.Any(ut => ut.Trainees.TraineeId == l.TraineeId && ut.Passe

我正在尝试执行此查询,但遇到一个错误:无法转换为存储表达式

如果我不能这样做,我如何实现它?我用的是C#

如果日期不是今年,我将尝试显示培训记录。非常感谢您的任何建议

tr =  from l in t.Trainees
      where !db.UserTrainings.Any(ut => ut.Trainees.TraineeId == l.TraineeId &&
                                        ut.Passed == true &&
                                        ut.DateTaken >= l.DateEnded.Value.AddYears(-1)) 
      ...... rest of the query.

我以前没有机会使用
EntityFunctions
,但我相信它可以用来解决您的问题


尝试将
l.dateend.Value.AddYears(-1)
替换为
EntityFunctions.AddYears(l.dateend,-1)
。该方法已记录在案。

Ah。我不知道如何在.NET3.5中做到这一点。如果可能的话,我强烈建议升级(特别是EF有很多很多增强功能)。