如何在 MongoDb 驱动程序的列表中包含特定字段
Posted
技术标签:
【中文标题】如何在 MongoDb 驱动程序的列表中包含特定字段【英文标题】:How to make Include specific field in IList in MongoDbDriver 【发布时间】:2021-12-21 17:52:46 【问题描述】:我想了解如何在 MongoDBdriver 中包含 List 中的特定字段(任何解决方案)
当我尝试包含一些属性时 例如:
var projection = Builders <SomeClass> .Projection
.Include (x => x.Id)
它的工作没有任何问题。
但是当我尝试从工作表中包含特定字段时
var projection = Builders <SomeClass> .Projection
.Include (x => x.ListOfSomeClasses.Select (x => x.SomeProperty))
我得到了这个异常
Error occurred during request execution
System.InvalidOperationException: Unable to determine the serialization information for x => x.ListOfSomeClasses.Select (x => x.SomeProperty).
在此之前,我使用过 postgres,那里没有这样的问题。
也许在 Mongo 中存在一些问题。任何答案都对我很有帮助。谢谢
【问题讨论】:
【参考方案1】:c# 驱动程序允许对类型化方式不支持的 LINQ 查询使用原始 MQL:
var projection = Builders<SomeClass>.Projection
.Include("ListOfSomeClasses.SomeProperty");
【讨论】:
你的上帝!我怎么没想到.. 如果有帮助,请将问题标记为已解决,以减少对它的关注以上是关于如何在 MongoDb 驱动程序的列表中包含特定字段的主要内容,如果未能解决你的问题,请参考以下文章
错误:未加载mongodb.jdbc.MongoDriver。您确定在jdbc_driver_library中包含了正确的jdbc驱动程序吗?