嗨,我正在尝试学习如何将 mongoDb 与 c# 驱动程序一起使用。我有一个类似的集合:
public class DataSnapshot
{
[BsonId]
public ObjectId InternalId { get; set; }
public Int Id { get; set; }
public string Identifier1 { get; set; }
public string Identifier2 { get; set; }
public List<NestedData> NestedData { get; set; }
}
和
public class NestedData
{
public DateTime TimeStamp { get; set; }
public double Info1 { get; set; }
public double Info2 { get; set; }
}
嵌套数据可能非常大。
我想查询集合以返回一个日期范围内所有嵌套数据的列表(理想情况下将来自多个快照的数据连接在一起,但只有一个是一个好的开始)
我正在努力弄清楚如何正确过滤和投影。我已经阅读了有关如何过滤以及如何过滤和投影的示例,但我正在努力使其适用于所有这些条件
我正在尝试做这样的事情:
context.DataSnapshot.Find(x => x.Identifier1 == "foo" && x.Identifier2 == "bar" && x.NestedData.Timestamp > DateTime.Now.AddYears(-1)).Project(x => x.NestedData).ToList();
最好的方法是如何做到这一点?
谢谢