我正在开发一个应用程序,它有一个使用比赛结果/时间等的模型。
我有一个看起来像这样的模型:
public class Competitor
{
public int ID { get; set; }
public string Name { get; set; }
public DateTime DateOfBirth { get; set; }
}
public class Event
{
public int ID { get; set; }
public string Name { get; set; }
public string Description { get; set; }
}
public class Result
{
public int ID { get; set; }
public decimal ResultTime { get; set; }
public Competitor Competitor { get; set; }
public Event Event { get; set; }
}
我计划将其展平以存储到 mongo db 中,如下所示:
public class ResultSchemaExample
{
public int CompetitorID { get; set; }
public string CompetitorName { get; set; }
public DateTime CompetitorDateOfBirth{ get; set; }
public int EventID { get; set; }
public string EventName { get; set; }
public string EventDescription { get; set; }
public int ResultID { get; set; }
public decimal ResultTime { get; set; }
}
我担心的是,这会使查询更加困难吗?
有没有办法可以对它进行分类以使其更容易?
所以我可以做如下查询:
var query =
collection.AsQueryable<Result>()
.Where(r => r.Name == "Alex");
它会查询我的底层、平面(非嵌入式)数据以返回 Result 的实例?
这可能吗?
或者,我应该在我的应用程序中使用我的 ResultSchemaExample 吗?