예제 #1
0
        static void Main(string[] args)
        {
            var productSample = new Product()
            {
                Id          = Guid.NewGuid(),
                Name        = "Mario Kart Wii",
                DateCreated = new DateTime(2017, 7, 20),
                Genre       = "Basic",
                Logo        = "s3://my-hosted-content-itechart/logo/Mario Kart Wii.jpg",
                Background  = "s3://my-hosted-content-itechart/background/Mario Kart Wii.jpg",
                Price       = 136.6,
                Count       = 7
            };

            var productDto = new ProductDto();

            //1 st variant: conversion using Model
            var destObject = productSample.Adapt <ProductDto>();

            //2 nd variant: conversion using variable

            var backResult = productSample.Adapt(destObject);

            //3 nd variant: conversion using linq


            //variant: conversion back sample
            var productNewOne = new Product();
            var backResulet   = backResult.Adapt(productNewOne);
        }
예제 #2
0
        public void Map_From_Null_Should_Be_Null()
        {
            Product product = null;

            var dto = product.Adapt <ProductDTO>();

            dto.ShouldBeNull();
        }
        public async Task <IActionResult> GetWithoutFilter2(long id)
        {
            Product product = await _dbContext.Products.FirstOrDefaultAsync(e => e.Id == id);

            // do your business with product

            // if you do not want to return fields use mapper

            ProductResponseModelAnother response = product.Adapt <ProductResponseModelAnother>();

            return(Ok(response));
        }
예제 #4
0
        public void Adapt_With_Destination_Type_Succeeds()
        {
            TypeAdapterConfig <Product, ProductDTO> .NewConfig()
            .Compile();

            var product = new Product {
                Id = Guid.NewGuid(), Title = "ProductA", CreatedUser = new User {
                    Name = "UserA"
                }
            };

            var dto = product.Adapt <ProductDTO>();

            dto.ShouldNotBeNull();
            dto.Id.ShouldBe(product.Id);
        }
예제 #5
0
        public void Adapt_With_Destination_Type_And_Config_Succeeds()
        {
            var config = new TypeAdapterConfig();

            config.ForType <Product, ProductDTO>();


            var product = new Product {
                Id = Guid.NewGuid(), Title = "ProductA", CreatedUser = new User {
                    Name = "UserA"
                }
            };

            var dto = product.Adapt <ProductDTO>(config);

            dto.ShouldNotBeNull();
            dto.Id.ShouldBe(product.Id);
        }