[英]Why am I getting the error “The serializer for field … must implement IBsonArraySerializer” when using AnyIn?
我在 C# 中通过 mongodb 声明了一个过滤器,如下所示:
var filters = new List<FilterDefinition<Message>>
if (!area.Equals(""))
filters.Add(Builders<Message>.Filter.Eq("Domain", area));
并且当area是单个字符串时完美地工作,例如 1. 但我想要 area 是 1,2,5,55,这个过滤器工作。 为此,我已将过滤器更改为:
filters.Add(Builders<Message>.Filter.AnyIn(x => x.Domain, area));
根据这个建议
但我收到了这个错误:
字段“域”的序列化程序必须实现 IBsonArraySerializer 并提供项目序列化信息。
为什么我会收到此错误,我该如何解决?
我看过这篇文章,但没有人不回复这篇文章。
如果我正确理解了这个问题,您应该使用$in 查询:
filters.Add(Builders<Message>.Filter.In("Domain", List<int>(){a1,a2}));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.