我很难让这个工作; 甚至不完全确定这是可能的。
让我们想象一个简单的场景:
class Employee {
List<ITask> Tasks {get;set;}
}
假设我们有两种不同的任务实现。
如果我想将 MongoDB 中的 Employee 对象保存为单个文档(我认为正确的方法),我将完全无法进行任何有用的查询。例如,如果某种 ITask 有类别,我想将 ITasks 拉到类别 A。或者如果一个任务在另一个文档中被引用,我需要将它拉回来。我一直遇到“不支持”的问题(SelectMany、OfType),然后事情从那里走下坡路。
任何人都对如何完成这些场景有一些见解?