我正在使用mongo-csharp-driver来查询我的Mongo实体。 我有以下对象存储在Mongo中:
public class Table
{
public int Id { get; private set; }
public string Description{ get; private set; }
public List<Player> Players { get; private set; }
public Table()
{
}
}
public class Player
{
public int Id { get; private set; }
public string Username{ get; private set; }
public Player()
{
}
}
当我尝试通过id或description查询“Table”对象时,我得到了相应的结果,但是当我尝试通过播放器列表进行查询时,我得到null:
// Works ok
var tab1 = mongo.GetCollection<Table>().Where(g => g.Description == "Test");
// Always return null, although should return the same result
var tab2 = mongo.GetCollection<Table>().Where(g => g.Players.Count > 90).FirstOrDefault();
我在这里缺少什么? 谢谢, 尼尔。
答案 0 :(得分:0)
问题在于Count property被翻译为$size query operator。
在链接的“高级查询”页面中,您可以看到:
“您不能使用$ size来查找一系列大小(例如:数组 超过1个元素)。“