当我以前使用EF 2.2时,它可以毫无问题地运行此代码:
public ResponseEntity(HttpStatus statusCode)
但是现在它会引发错误:
var resource = locResRepo.GetWhere(i => i.ForApplication.ToLower() == applicationName.ToLower())
.Where(resourcesConditionExpression)
.Select(item => new ResourceKeyObject
{
Id = item.Id,
ResourceKey = item.ResourceKey,
ResourceKeyValues = item.ActualLocalizationTranslation
.Where(translationConditionExpression)
.Select(v => new ResourceKeyValues
{
Language = v.Language,
KeyValue = v.Value
}).ToList()
}).ToList();
我真的不知道为什么。或者也许我知道一些,但是我不知道如何实现
答案 0 :(得分:1)
从3.0开始,不再在客户端上评估EF Core LINQ查询。 learn more: MSDN
实际上,我认为如果进行一些计算,您的问题可能出在i.ForApplication属性中。
答案 1 :(得分:0)
我找到了解决方案。由于EF 3.1逻辑,select之前必须为.ToList()