Exemplo n.º 1
0
        public void When_Using_OrderBy_Clause_Then_Returned_Sequence_Is_Sorted_Ascending()
        {
            using (var scenario =
                       new ODataScenario()
                       .WithProducts(Any.Products(8))
                       .Start())
            {
                var context = GetDataServiceContext(scenario.GetBaseAddress());
                var dQuery  = context.CreateQuery <Product>("/" + "Products");
                IReadOnlyQueryableSet <IProduct> readOnlySet = new ReadOnlyQueryableSet <IProduct>(dQuery, context);

                //Query directly
                var products = readOnlySet.OrderBy(p => p.Name).ExecuteAsync().Result;
                products.CurrentPage.Count.Should().Be(8);
                products.CurrentPage.Should().BeInAscendingOrder(p => p.Name);

                //Query using linq
                var linqQuery = from prod in readOnlySet
                                orderby prod.Category
                                select prod;
                products = linqQuery.ExecuteAsync().Result;
                products.CurrentPage.Count.Should().Be(8);
                products.CurrentPage.Should().BeInAscendingOrder(p => p.Category);
            }
        }
Exemplo n.º 2
0
        public void When_Using_OrderBy_Clause_Then_Returned_Sequence_Is_Sorted_Ascending()
        {
            using (var scenario =
                    new ODataScenario()
                        .WithProducts(Any.Products(8))
                        .Start())
            {
                var context = GetDataServiceContext(scenario.GetBaseAddress());
                var dQuery = context.CreateQuery<Product>("/" + "Products");
                IReadOnlyQueryableSet<IProduct> readOnlySet = new ReadOnlyQueryableSet<IProduct>(dQuery, context);

                //Query directly
                var products = readOnlySet.OrderBy(p => p.Name).ExecuteAsync().Result;
                products.CurrentPage.Count.Should().Be(8);
                products.CurrentPage.Should().BeInAscendingOrder(p => p.Name);

                //Query using linq
                var linqQuery = from prod in readOnlySet
                                orderby prod.Category
                                select prod;
                products = linqQuery.ExecuteAsync().Result;
                products.CurrentPage.Count.Should().Be(8);
                products.CurrentPage.Should().BeInAscendingOrder(p => p.Category);
            }
        }