Esempio n. 1
0
        public PageData <BsonDocument> GetPageDataByConditionHaveID(MongoDbParameter parameter)
        {
            if (parameter.MongoQuery == null)
            {
                throw new NotImplementedException("MongoDbParameter的MongoQuery必须使用MongoDb的规定查询条件格式。");
            }

            var cursor     = this.mMongoCollection.FindAs <BsonDocument>(parameter.MongoQuery);
            var resultList = cursor.SetSkip((parameter.PageIndex - 1) * parameter.PageSize)
                             .SetLimit(parameter.PageSize)
                             .ToList();

            return(new PageData <BsonDocument>(resultList, (int)cursor.Count()));
        }
Esempio n. 2
0
        public PageData <BsonDocument> GetPageData(MongoDbParameter parameter)
        {
            var recordCount = this.mMongoCollection.Count();
            var resultList  =
                this.mMongoCollection.FindAs <BsonDocument>(null)
                .SetSkip((parameter.PageIndex - 1) * parameter.PageSize)
                .SetLimit(parameter.PageSize)
                .Select(document =>
            {
                document.Remove("_id");
                return(document);
            }).ToList();
            var result = new PageData <BsonDocument>(resultList, (int)recordCount);

            return(result);
        }
        public PageData <object> GetPageDataDemo(MongoDbDemoParameter demoParameter)
        {
            var query = Query.And(
                Query.LTE("CTime", new BsonDateTime(demoParameter.CTime)),
                Query.Matches("Keyword", new BsonRegularExpression(new Regex(demoParameter.Keyword, RegexOptions.None)))//mongodb的模糊查询
                );
            var parameter = new MongoDbParameter
            {
                PageIndex  = demoParameter.PageIndex,
                PageSize   = demoParameter.PageSize,
                MongoQuery = query
            };
            var pagedata = this.GetPageDataByConditionHaveID(parameter);
            var _objs    = new List <object>();

            pagedata.Datas.ToList().ForEach(document =>
            {
                var item = BsonSerializer.Deserialize <object>(document);
                _objs.Add(new
                {
                    //Comment = item.Comment,
                    //CTime = item.CTime.ToLocalTime(),
                    //HandleComment = item.HandleComment,
                    //HandleOpinion = item.HandleOpinion,
                    //HandlePerson = item.HandlePerson,
                    //HandleTime = item.HandleTime.ToLocalTime(),
                    //ID = item._id.ToString(),
                    //LinkMan = item.LinkMan,
                    //LinkTel = item.LinkTel,
                    //ProID = item.ProID,
                    //ProMSpec = item.ProMSpec,
                    //ProName = item.ProName,
                    //SearchKeyword = item.SearchKeyword,
                    //SearchType = item.SearchType,
                    //Status = item.Status
                });
            });
            var result = new PageData <object>
            {
                DataCount = pagedata.DataCount,
                Datas     = _objs
            };

            return(result);
        }