好像Cosmos DB LINQ提供程序可以翻译:
forms.Where(x => x.Clients.Contains(new Client { Id = 100 })
至:
WHERE ARRAY_CONTAINS(root["clients"],{"id":100, "number": null})
模型:
public class Client
{
[JsonProperty("id")]
public int Id { get; set; }
[JsonProperty("numner")]
public int? Number { get; set; }
}
但是我真正需要的是使用partialMatch
(默认情况下,ARRAY_CONTAINS
,false
的第三个可选参数)。
那么是使LINQ提供程序生成以下查询的方法吗?
WHERE ARRAY_CONTAINS(c["clients"],{"id":100}, true)
我尝试使用.Any()
,但是有一个例外(在这种情况下似乎不支持Any
)。
也许可以以某种方式使用IEqualityComparer<TSource>
?