这是我的员工使用的
var client = new MongoClient(System.Configuration.ConfigurationManager.AppSettings["MongoDbServer"]);
var server = client.GetServer();
MongoDatabase db = server.GetDatabase("Edbert");
var collection = db.GetCollection("testInstagram");
var query = Query.And(Query.Not(Query.Or(Query.Size("PossibleInstagramIDs", 1), Query.Size("PossibleInstagramIDs", 0))),Query.EQ("InstagramID",BsonNull.Value));
我认为这部分很难看:
var query = Query.And(Query.Not(Query.Or(Query.Size("PossibleInstagramIDs", 1), Query.Size("PossibleInstagramIDs", 0))),Query.EQ("InstagramID",BsonNull.Value));
如果PossibleInstagramIDs的大小大于1,他试图将查询设置为返回true。
他应该做些什么?
答案 0 :(得分:0)
我会通过创建TestInstagram
类然后使用LINQ来强烈打印该集合。
您的TestInstagram
课程将如下所示:
public class TestInstagram
{
public ObjectId Id { get; set; }
public IEnumerable<int> PossibleInstagramIDs { get; set; }
public int InstagramID { get; set; }
}
这将允许您简单地查询如下:
var collection = _mongoDatabase.GetCollection<TestInstagram>("testInstagram");
collection.AsQueryable().Where(ti => ti.PossibleInstagramIDs.Count() > 1 && ti.InstagramID == null);