结合使用C#MongoDB LINQ和鉴别符可以准确描述我要执行的操作,但是我正在尝试使用新的官方2.0.1驱动程序。
我有一系列带有特殊属性的子类,这些子类均继承自包含公共属性的基类。鉴别器属性似乎很好,我已经成功使用子类型保存了混合文档。
我期望接下来可以做的是一个类似于以下内容的查询:
var subsetB = db.GetCollection<BaseClass>("Documents").AsQueryable<BaseClass>().OfType<SubclassB>();
获取所有类型为SubclassB的文档。但是,我发现的文档和文章中提到的AsQueryable()和OfType()方法似乎不可用。
我是否错过了某些事情,或者是否有其他推荐的方法可以通过新驱动程序实现?
对此没有特殊支持。
您需要为区分字段明确添加过滤器_t
。
var results = await collection.Find(Builders<SubclassB>.Filter.Eq("_t", nameof(SubclassB))).ToListAsync();
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句