Exemple #1
0
 public CollectionDataResult(TObj data, QueryFilterBase filter, int totalItems)
 {
     this.Data       = data;
     this.PageSize   = filter.PageSize;
     this.PageIndex  = filter.PageIndex;
     this.TotalItems = totalItems;
 }
Exemple #2
0
        public static PagingInfoEntity ConvertToPaging(this QueryFilterBase filter)
        {
            var paging = new PagingInfoEntity()
            {
                SortField     = filter.PageInfo.SortBy,
                StartRowIndex = (filter.PageInfo.PageIndex - 1) * filter.PageInfo.PageSize,
                MaximumRows   = filter.PageInfo.PageSize
            };

            return(paging);
        }
Exemple #3
0
        public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
        {
            if (reader.TokenType == JsonToken.Null)
            {
                return(null);
            }
            var rendererJson = serializer.Deserialize <JObject>(reader);

            if (rendererJson.Type == JTokenType.Null)
            {
                return(null);
            }
            var list       = new List <KeyValuePair <string, JToken> >();
            var currentKey = "Value";

            foreach (var item in rendererJson)
            {
                if (types.Contains(item.Key))
                {
                    currentKey = item.Key;
                    break;
                }
            }
            QueryFilterBase filter           = null;
            var             renderJsonString = rendererJson.ToString();

            using (var sr = new StringReader(renderJsonString))
            {
                switch (currentKey)
                {
                case "Value":
                    filter = (QueryFilter)serializer.Deserialize(sr, typeof(QueryFilter));
                    break;

                case "Geometry":
                    filter = (SpatialQueryFilter)serializer.Deserialize(sr, typeof(SpatialQueryFilter));
                    break;

                case "Filters":
                    filter = (AndOrQueryFilter)serializer.Deserialize(sr, typeof(AndOrQueryFilter));
                    break;
                }
                return(filter);
            }
        }
Exemple #4
0
        public static PageInfo ConvertToPageInfo(this QueryFilterBase filter, int totalCount)
        {
            int pageIndex = filter.PageInfo.PageIndex;

            if ((pageIndex * filter.PageInfo.PageSize) > totalCount)
            {
                if (totalCount != 0 && (totalCount % filter.PageInfo.PageSize) == 0)
                {
                    pageIndex = totalCount / filter.PageInfo.PageSize;
                }
                else
                {
                    pageIndex = totalCount / filter.PageInfo.PageSize + 1;
                }
            }

            var pageInfo = new PageInfo();

            pageInfo.TotalCount = totalCount;
            pageInfo.PageIndex  = pageIndex;
            pageInfo.PageSize   = filter.PageInfo.PageSize;
            pageInfo.SortBy     = filter.PageInfo.SortBy;
            return(pageInfo);
        }