有没有人使用C#.Net MongoDB驱动程序FilterDefinitionBuilder的不在过滤器中?这是一个简单的例子,我放在一起,我似乎无法工作。假设我们必须保留收藏。目标是只检索不在指定的ArtistGenresDocument列表中的ArtistDetailsDocument。
该代码不会编译并指出“无法将lambda表达式转换为类型'MongoDB.Driver.FieldDefinition ArtistDetailsDocument,ArtistGenresDocument',因为它不是委托类型”。
感谢帮助! \ M/\ M/
public class ArtistDetailsDocument
{
public ObjectId Id { get; set; }
public String artist_ID { get; set; }
public String artistName { get; set; }
}
public class ArtistGenresDocument
{
public ObjectId Id { get; set; }
public String artist_ID { get; set; }
public String genre { get; set; }
}
IEnumerable<ArtistGenresDocument> list = await ArtistGenresCollection.Find(x => x.genre == "Pop" | x.genre == "Easy Listening").ToListAsync();
var filter = Builders<ArtistDetailsDocument>.Filter.Nin<ArtistGenresDocument>(x => x.artist_ID, list);
var ArtistDetailsDocuments = ArtistDetailsCollection.Find(filter);
很高兴我不能帮助。如果我的帖子很有用,也许你可以upvote,那么其他人可能会有一些有用的信息 – pieperu