Привет. Я пытаюсь узнать, как использовать 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();
Как лучше всего это сделать?
Спасибо