Creates a new QueryRequest for records
상속: CollectionRequestBase
예제 #1
0
 /// <summary>
 /// Creates a new MongoCursor
 /// </summary>
 public MongoCursor(QueryRequest query, long cursor, int count)
 {
     Cursor = cursor;
     Query = query;
     ReturnCount = count;
 }
예제 #2
0
        /// <summary>
        /// Selects the records from the database that matches this query
        /// </summary>
        public IEnumerable<MongoDocument> Select(int skip, int take, QueryOptionTypes options, params string[] fields)
        {
            //create the request to use
            QueryRequest request = new QueryRequest(this.Collection);
            request.Fields.AddRange(fields);
            request.Skip = skip;
            request.Take = take;
            request.Options = options;
            request.Parameters = this._Parameters;

            //send the request and get the response
            QueryResponse response = this.Collection.Database.Connection
                .SendRequest(request) as QueryResponse;

            //save this cursor for later
            MongoCursor cursor = new MongoCursor(request, response.CursorId, response.TotalReturned);
            this.Collection.Database.RegisterCursor(cursor);

            //and return the records
            IEnumerable<MongoDocument> documents = response.Documents.AsEnumerable();
            this.Collection.UpdateOnSubmit(documents);
            return documents;
        }
예제 #3
0
 /// <summary>
 /// Creates a new MongoCursor
 /// </summary>
 public MongoCursor(QueryRequest query, long cursor, int count)
 {
     this.Cursor = cursor;
     this.Query = query;
     this.ReturnCount = count;
 }