Beispiel #1
0
        private static DataSourceResult ToDataSourceResult(this DataTableWrapper enumerable, DataSourceRequest request)
        {
            var filters = new List <IFilterDescriptor>();

            if (request.Filters != null)
            {
                filters.AddRange(request.Filters);
            }

            if (filters.Any())
            {
                var dataTable = enumerable.Table;
                filters.SelectMemberDescriptors()
                .Each(f => f.MemberType = GetFieldByTypeFromDataColumn(dataTable, f.Member));
            }

            var group = new List <GroupDescriptor>();

            if (request.Groups != null)
            {
                group.AddRange(request.Groups);
            }

            if (group.Any())
            {
                var dataTable = enumerable.Table;
                group.Each(g => g.MemberType = GetFieldByTypeFromDataColumn(dataTable, g.Member));
            }

            var result = enumerable.AsEnumerable().ToDataSourceResult(request);

            result.Data = result.Data.SerializeToDictionary(enumerable.Table);

            return(result);
        }
        private static DataSourceResult ToDataSourceResult(this DataTableWrapper enumerable, DataSourceRequest request)
        {
            List <IFilterDescriptor> source = new List <IFilterDescriptor>();

            if (request.Filters != null)
            {
                source.AddRange(request.Filters);
            }
            if (source.Any <IFilterDescriptor>())
            {
                var dataTable = enumerable.Table;
                source.SelectMemberDescriptors().Each <FilterDescriptor>(delegate(FilterDescriptor f) {
                    f.MemberType = GetFieldByTypeFromDataColumn(dataTable, f.Member);
                });
            }
            List <GroupDescriptor> list2 = new List <GroupDescriptor>();

            if (request.Groups != null)
            {
                list2.AddRange(request.Groups);
            }
            if (list2.Any <GroupDescriptor>())
            {
                var dataTable = enumerable.Table;
                list2.Each <GroupDescriptor>(delegate(GroupDescriptor g) {
                    g.MemberType = GetFieldByTypeFromDataColumn(dataTable, g.Member);
                });
            }
            DataSourceResult result = enumerable.AsEnumerable <System.Data.DataRowView>().ToDataSourceResult(request);

            result.Data = result.Data.SerializeToDictionary(enumerable.Table);
            return(result);
        }
        public void Should_return_empty_enumerable_if_no_member_filter_descriptors_exists()
        {
            IEnumerable<IFilterDescriptor> filters = new List<IFilterDescriptor>()
            {
                new CompositeFilterDescriptor()
            };

            IEnumerable<FilterDescriptor> result = filters.SelectMemberDescriptors();
            Assert.False(result.Any());
        }
        public void Should_return_all_member_filter_descriptors_non_hierarchichal_filter()
        {
            IEnumerable<IFilterDescriptor> filters = new List<IFilterDescriptor>()
            {
                new FilterDescriptor(),
                new FilterDescriptor()
            };

            IEnumerable<FilterDescriptor> result = filters.SelectMemberDescriptors();
            Assert.Equal(2, result.Count());
        }
        public void Should_return_empty_enumerable_if_no_member_filter_descriptors_exists()
        {
            IEnumerable <IFilterDescriptor> filters = new List <IFilterDescriptor>()
            {
                new CompositeFilterDescriptor()
            };

            IEnumerable <FilterDescriptor> result = filters.SelectMemberDescriptors();

            Assert.False(result.Any());
        }
        public void Should_return_all_member_filter_descriptors_non_hierarchichal_filter()
        {
            IEnumerable <IFilterDescriptor> filters = new List <IFilterDescriptor>()
            {
                new FilterDescriptor(),
                new FilterDescriptor()
            };

            IEnumerable <FilterDescriptor> result = filters.SelectMemberDescriptors();

            Assert.Equal(2, result.Count());
        }