【发布时间】:2019-03-29 10:03:28
【问题描述】:
每当我尝试从集合中获取 Id 列表时:
var messages = db.GetCollection<MessageExchange>(collectionName);
var ids = messages
.AsQueryable()
.Where(_=> true)
.Select(x => x.Id)
.ToList();
我收到一个转换错误:
System.FormatException HResult=0x80131537 消息=不能 从 BsonType 'ObjectId' 反序列化一个 'String'。来源= StackTrace:
我无法修改类的定义,因为它在我无法更改的包中实现。因此放置的解决方案:
[BsonRepresentation(BsonType.ObjectId)]
关于它,不可能。基于this。
是否可以在 Linq 查询中强制转换?
【问题讨论】:
-
您想要字符串列表还是对象 ID 列表?
-
只需要一个id列表,如果是字符串就更好了
标签: c# mongodb casting mongodb-.net-driver