我正在尝试按照here提供的解决方案,但仍然没有成功:
此查询返回null
:
var plan = _dbClient.CreateDocumentQuery<Plan>(_collectionUri)
.SelectMany(p => p.Users.Where(u => u.Id == userId)
.Select(u => p))
.AsEnumerable()
.FirstOrDefault();
虽然这会返回我正在搜索的文档(我试图不在[{1}}之前离开AsEnumerable
:
Where
这就是文件的样子:
var plan = _dbClient.CreateDocumentQuery<Plan>(_collectionUri)
.AsEnumerable()
.Where(p => p.Users.Any(u => u.Id == userId))
.FirstOrDefault();
}
提前谢谢!
答案 0 :(得分:0)
首先,我测试了你的第一个LINQ查询,它适用于我。
您需要检查对象中的案例问题是否与LINQ相对应。
其次,我测试了您的第二个LINQ查询,并将AsEnumerable
保留在Where
之前。它出现错误:Method 'Any' is not supported.
请检查LINQ to SQL API,我建议您使用ARRAY_CONTAINS制作sql。
希望它对你有所帮助。