Ejemplo n.º 1
0
        public void CanMapNonGenericQueryable()
        {
            var movies =
                new List <Movie>()
            {
                new Movie()
                {
                    Actors = new Actor[] { new Actor()
                                           {
                                               Name = "Actor 1"
                                           }, new Actor()
                                           {
                                               Name = "Actor 2"
                                           } }
                },
                new Movie()
                {
                    Actors = new Actor[] { new Actor()
                                           {
                                               Name = "Actor 3"
                                           }, new Actor()
                                           {
                                               Name = "Actor 4"
                                           } }
                }
            }.AsQueryable();

            var mapped = movies.ProjectTo <MovieDto>();

            mapped.ElementAt(0).Actors.Length.ShouldEqual(2);
            mapped.ElementAt(1).Actors[1].Name.ShouldEqual("Actor 4");
        }
        public void EnumerablesAreMappedToArrays()
        {
            var movies =
                new List <Movie>()
            {
                new Movie()
                {
                    Actors = new Actor[] { new Actor()
                                           {
                                               Name = "Actor 1"
                                           }, new Actor()
                                           {
                                               Name = "Actor 2"
                                           } }
                },
                new Movie()
                {
                    Actors = new Actor[] { new Actor()
                                           {
                                               Name = "Actor 3"
                                           }, new Actor()
                                           {
                                               Name = "Actor 4"
                                           } }
                }
            }.AsQueryable();

            var mapped = movies.ProjectTo <MovieDto>(_config);

            mapped.ElementAt(0).Actors.Length.ShouldEqual(2);
            mapped.ElementAt(1).Actors[1].Name.ShouldEqual("Actor 4");
        }
Ejemplo n.º 3
0
        // GET api/values
        public IQueryable <TestModelDTO> Get()
        {
            IQueryable <test_model> testModels = new List <test_model> {
                new test_model()
            }.AsQueryable();

            return(testModels.ProjectTo <TestModelDTO>(new { insideValue = "inside" }));
        }
Ejemplo n.º 4
0
        public async Task AddListAsync(List <AddStudentRequest> request)
        {
            if (request.Any())
            {
                var stds = request.ProjectTo(_mapper, RoleEnum.Student);

                // update student
                await _repository.AddOrUpdateListAsync(stds);
            }
        }
        public void EnumerablesAreMappedToArrays()
        {
            var movies =
                new List<Movie>() {
                new Movie() { Actors = new Actor[] { new Actor() { Name = "Actor 1" }, new Actor() { Name = "Actor 2" } } },
                new Movie() { Actors = new Actor[] { new Actor() { Name = "Actor 3" }, new Actor() { Name = "Actor 4" } } }
                }.AsQueryable();

            var mapped = movies.ProjectTo<MovieDto>(_config);

            mapped.ElementAt(0).Actors.Length.ShouldEqual(2);
            mapped.ElementAt(1).Actors[1].Name.ShouldEqual("Actor 4");
        }
        public void CanMapNonGenericQueryable()
        {
            var movies =
                new List<Movie>() {
                new Movie() { Actors = new Actor[] { new Actor() { Name = "Actor 1" }, new Actor() { Name = "Actor 2" } } },
                new Movie() { Actors = new Actor[] { new Actor() { Name = "Actor 3" }, new Actor() { Name = "Actor 4" } } }
                }.AsQueryable();

            var mapped = movies.ProjectTo<MovieDto>();

            mapped.ElementAt(0).Actors.Length.ShouldEqual(2);
            mapped.ElementAt(1).Actors[1].Name.ShouldEqual("Actor 4");
        }
Ejemplo n.º 7
0
        public void OrderListQueryTest()
        {
            MapperConfiguration MapConfig = new MapperConfiguration(cfg =>
                                                                    cfg.CreateMap <Order, OrderListModel>());
            var orderlist = new OrderListModel()
            {
                Address          = "Hájecká 1800 Malíkovice 273 77",
                Id               = Guid.Parse("9d75bbc6-206d-422d-a022-0f34719fc3fd"),
                RentalSince      = new DateTime(2020, 12, 8, 16, 0, 0),
                RentalTill       = new DateTime(2020, 12, 8, 23, 0, 0),
                Created          = new DateTime(2020, 11, 3, 16, 0, 0),
                IsConfirmed      = true,
                FinalPrice       = 4321,
                CustomerFullName = "Marta Jurčíková"
            };
            var order = new Order()
            {
                LocationAddress = new Address()
                {
                    Street         = "Hájecká",
                    BuildingNumber = "1800",
                    City           = "Malíkovce",
                    PostalCode     = "273 77"
                },
                RentalSince      = new DateTime(2020, 12, 8, 16, 0, 0),
                RentalTill       = new DateTime(2020, 12, 8, 23, 0, 0),
                Created          = new DateTime(2020, 11, 3, 16, 0, 0),
                ConfirmationDate = new DateTime(2020, 11, 3, 16, 0, 0),
                FinalPrice       = 4321,
                Customer         = new ApplicationUser("Marta Jurčíková")
            };
            IQueryable <Order> orders = new List <Order>()
            {
                order
            }.AsQueryable();

            Assert.DoesNotThrow(() =>
            {
                orders.ProjectTo <OrderListModel>(MapConfig);
            });
        }
Ejemplo n.º 8
0
        public void TestMethod1()
        {
            Mapper.Initialize(cfg =>
            {
                cfg.CreateMap <Source, Dto>()
                .ForMember(dto => dto.Title, conf => conf.MapFrom(src => src.Name))
                .ForMember(dto => dto.Nodes, conf => { conf.MapFrom(src => src.NestedElements); conf.ExplicitExpansion(); });
            });
            Mapper.Configuration.CompileMappings();
            Mapper.AssertConfigurationIsValid();

            IQueryable <Source> iq = new List <Source>
            {
                new Source
                {
                    Name           = "TOP LEVEL",
                    NestedElements = new List <Source>()
                    {
                        new Source()
                        {
                            Name = "1.1"
                        },
                        new Source()
                        {
                            Name = "1.2"
                        },
                    }.AsQueryable(),
                }
            }.AsQueryable();

            var projectTo = iq.ProjectTo <Dto>(_ => _.Nodes);

            Assert.AreEqual(1, projectTo.Count());
            var first = projectTo.First();

            Assert.IsNotNull(first.Nodes);
            Assert.AreEqual(2, first.Nodes.Count());
            Assert.AreEqual("1.1", first.Nodes.First().Title);
        }