Пример #1
0
        public UsersProductsDto GetUsersSoldProducts()
        {
            var collection = new UsersProductsDto()
            {
                usersCount = this.Context.Users
                             .Include(p => p.ProductsSelled)
                             .Where(x => x.ProductsSelled.Count > 0).Count(),
                users = this.Context.Users.Where(x => x.ProductsSelled.Count > 0)
                        .Select(u => new UserDto()
                {
                    firstName    = u.FirstName,
                    lastName     = u.LastName,
                    age          = u.Age,
                    soldProducts = u.ProductsSelled
                                   .Select(p => new SoldProductsDtoByNameAndPrice()
                    {
                        count    = u.ProductsSelled.Count,
                        products = u.ProductsSelled
                                   .Select(x => new ProductDto()
                        {
                            name  = x.ProductName,
                            price = x.ProductPrice
                        }).ToArray(),
                    }).ToArray(),
                })
                        .OrderByDescending(x => x.soldProducts.Count)
                        .ThenBy(x => x.lastName)
                        .ToArray(),
            };

            return(collection);
        }
Пример #2
0
        private static void GetUsersAndProducts(ProductShopContext context, IMapper mapper)
        {
            var users = new UsersProductsDto()
            {
                UsersCount = context.Users.Count(),
                Users      = context.Users
                             .Where(u => u.ProductsSold.Count > 0)
                             .OrderByDescending(u => u.ProductsSold.Count)
                             .ThenBy(u => u.LastName)
                             .Select(u => new UserProductsDto
                {
                    FirstName    = u.FirstName,
                    LastName     = u.LastName,
                    Age          = u.Age,
                    SoldProducts = new ProductsUsersDto
                    {
                        Count    = u.ProductsSold.Count,
                        Products = u.ProductsSold.Select(p => new ProductUsersDto
                        {
                            Name  = p.Name,
                            Price = p.Price
                        }).ToArray()
                    }
                }).ToArray()
            };

            var json = JsonConvert.SerializeObject(users, Formatting.Indented);

            File.WriteAllText("../../../ExportFiles/users-and-products.json", json);
        }
        private static void UsersAndProducts(ProductShopContext context)
        {
            var users = new UsersProductsDto
            {
                UsersCount = context.Users.Count(),
                Users      = context.Users
                             .Where(u => u.ProductsSold.Count > 0)
                             .OrderByDescending(u => u.ProductsSold.Count)
                             .ThenBy(u => u.LastName)
                             .Select(u => new UserProductsDto
                {
                    FirstName    = u.FirstName,
                    LastName     = u.LastName,
                    Age          = u.Age.ToString(),
                    SoldProducts = new Sold_ProductsDto
                    {
                        ProductsCount = u.ProductsSold.Count,
                        Products      = u.ProductsSold.Select(pr => new Sold_ProductDto
                        {
                            Name  = pr.Name,
                            Price = pr.Price
                        }).ToList()
                    }
                }).ToList()
            };

            var serializer = new XmlSerializer(typeof(UsersProductsDto), new XmlRootAttribute("users"));

            using (var writer = new StreamWriter("../../../OutXMLFiles/users-and-products"))
            {
                serializer.Serialize(writer, users, new XmlSerializerNamespaces(new[] { XmlQualifiedName.Empty }));
            }
        }
Пример #4
0
        internal static void ExportUsersSoldProducts()
        {
            UsersProductsDto userProducts = jsonService.GetUsersSoldProducts();

            String jsonString = JsonConvert
                                .SerializeObject(userProducts, Formatting.Indented,
                                                 new JsonSerializerSettings()
            {
                DefaultValueHandling = DefaultValueHandling.Ignore,
                FloatFormatHandling  = FloatFormatHandling.DefaultValue
            });

            String filePath = @"..\ProductShop.Resources\JsonExport\user-and-products.json";

            File.WriteAllText(filePath, jsonString);
        }