示例#1
0
        public override void Load()
        {
            try
            {
                _logger.LogDebug("Load {0}", _debugName);

                BeforeLoad();

                PagingResultDto <T1> result;

                var qe = new QueryBuilder.QueryExpression()
                {
                    PageIndex    = PagerViewModel.CurrentPageIndex,
                    PageSize     = PagerViewModel.PageSize,
                    WhereOptions = WhereOptionsFromHeaderFilter(HeaderFilters),
                    OrderOptions = OrderOptionsFromHeaderFilter(HeaderFilters)
                };

                result = DataService.Get <T, T1>(qe);

                _originalEntities.Clear();

                foreach (var dto in result.Items)
                {
                    ProcessDataModelBeforeAddToEntities(dto);
                    _originalEntities.Add(dto);
                }

                Entities.Reset(result.Items);

                PagerViewModel.ItemCount = Entities.Count;
                PagerViewModel.PageCount = result.PageCount;
                PagerViewModel.SetCurrentPageIndexWithoutAction(result.PageIndex);

                AfterLoad();

                SysMsg = "OK";
            }
            catch (System.Net.WebException ex)
            {
                if (ex.Response != null)
                {
                    var statusCode = ((System.Net.HttpWebResponse)ex.Response).StatusCode;
                    SysMsg = string.Format("[{0}] {1}", statusCode, new System.IO.StreamReader(ex.Response.GetResponseStream()).ReadToEnd());
                }
                else
                {
                    SysMsg = ex.Message;
                }
            }
            catch (Exception ex)
            {
                SysMsg = ex.Message;
            }
        }
示例#2
0
        public override void Load()
        {
            var qe = new QueryExpression()
            {
                PageIndex    = PagerViewModel.CurrentPageIndex,
                PageSize     = PagerViewModel.PageSize,
                WhereOptions = WhereOptionsFromHeaderFilter(HeaderFilters),
                OrderOptions = OrderOptionsFromHeaderFilter(HeaderFilters)
            };

            var data = QueryExpression.AddQueryExpression(_data.AsQueryable(), ref qe, out int pageCount);

            Entities.Reset(data);

            PagerViewModel.ItemCount = Entities.Count;
            PagerViewModel.PageCount = pageCount;
            PagerViewModel.SetCurrentPageIndexWithoutAction(qe.PageIndex);

            SysMsg = "OK";
        }
示例#3
0
        public void Load()
        {
            Logger.Instance.Debug(_debugName + " BaseViewModel Load", Logger.Categories.UI);

            BeforeLoad();

            DTO.PagingResultDto <T> result;

            var qe = new QueryBuilder.QueryExpression();

            qe.PageIndex = PagerViewModel.IsEnablePaging ? PagerViewModel.CurrentPageIndex : 0;
            qe.PageSize  = 30;

            qe.WhereOptions = WhereOptionsFromHeaderFilter(HeaderFilters);
            qe.OrderOptions = OrderOptionsFromHeaderFilter(HeaderFilters);
            if (qe.OrderOptions.Count == 0)
            {
                qe.AddOrderByOption("Ma", true);
            }
            result = DataService.Get(qe);

            _originalEntities.Clear();

            foreach (var dto in result.Items)
            {
                ProcessDtoBeforeAddToEntities(dto);
                _originalEntities.Add(dto);
            }

            Entities.Reset(result.Items);

            PagerViewModel.ItemCount = Entities.Count;
            PagerViewModel.PageCount = result.PageCount;
            PagerViewModel.SetCurrentPageIndexWithoutAction(result.PageIndex);

            AfterLoad();
        }