gpt4 book ai didi

azure-cosmosdb - 在DocumentDB上使用Any进行子集合的LINQ查询问题

转载 作者:行者123 更新时间:2023-12-04 16:58:42 24 4
gpt4 key购买 nike

使用v1.8 .Net SDK

尝试退货销售,其中销售客户数组包含我要寻找的客户ID。

Sales.Where(sale => sale.Clients.Any(c => c.ClientId == clientID));

返回错误
“可为空的对象必须具有一个值。”

在System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
在System.Threading.Tasks.Task上 1.GetResultCore(Boolean waitCompletionNotification)
at System.Threading.Tasks.Task
1.get_Result()
在Microsoft.Azure.Documents.Linq.DocumentQuery 1.GetEnumerator()
at System.Collections.Generic.List
1..ctor(IEnumerable 1 collection)
at System.Linq.Enumerable.ToList[TSource](IEnumerable
1源)

ClientID是GUID,但是尝试查询客户端对象上的任何属性都会返回相同的错误。

如果我对相同的数据运行相同的查询,但仅使用List集合(即不使用DocumentDB),那么一切都很好。

任何建议表示赞赏。
谢谢

最佳答案

可以使用SelectMany +其中:

Sales.SelectMany(s => s.Clients.Where(c => c.ClientID == clientID).Select(c => s));  

关于azure-cosmosdb - 在DocumentDB上使用Any进行子集合的LINQ查询问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38275668/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com