예제 #1
0
        public ArrayList find(string db, string collection, int skip, int limit, int batch_size, Hashtable json_query, Hashtable json_fields)
        {
            var _db         = _mongoserver.GetDatabase(db);
            var _collection = _db.GetCollection <MongoDB.Bson.BsonDocument>(collection) as MongoDB.Driver.MongoCollection <MongoDB.Bson.BsonDocument>;

            MongoDB.Driver.QueryDocument _query = new MongoDB.Driver.QueryDocument(json_query);

            MongoDB.Driver.MongoCursor <MongoDB.Bson.BsonDocument> c = null;
            if (json_fields != null)
            {
                MongoDB.Driver.FieldsDocument _fields = new MongoDB.Driver.FieldsDocument(json_fields);
                c = _collection.FindAs <MongoDB.Bson.BsonDocument>(_query).SetSkip(skip).SetLimit(limit).SetBatchSize(batch_size).SetFields(_fields);
            }
            else
            {
                c = _collection.FindAs <MongoDB.Bson.BsonDocument>(_query).SetSkip(skip).SetLimit(limit).SetBatchSize(batch_size);
            }

            ArrayList _list = new ArrayList();

            foreach (var data in c)
            {
                var _data = data.ToHashtable();
                _data.Remove("_id");
                _list.Add(_data);
            }

            return(_list);
        }
예제 #2
0
        public ArrayList find(int skip, int limit, int batch_size, Hashtable json_query, Hashtable json_fields)
        {
            MongoDB.Driver.QueryDocument  _query  = new MongoDB.Driver.QueryDocument(json_query);
            MongoDB.Driver.FieldsDocument _fields = new MongoDB.Driver.FieldsDocument(json_fields);

            var c = _collection.FindAs <MongoDB.Bson.BsonDocument>(_query).SetSkip(skip).SetLimit(limit).SetBatchSize(batch_size).SetFields(_fields);

            ArrayList _list = new ArrayList();

            foreach (var data in c)
            {
                _list.Add(data.ToHashtable());
            }

            return(_list);
        }