public static List <Product> GetData(int?count)
        {
            if (count == null)
            {
                count = 20;
            }

            string[] names =
            {
                "Intel CPU",         "AMD CPU",
                "Intel Motherboard", "AMD Motherboard","NVIDIA Motherboard",
                "NVIDIA GPU",        "GIGABYTE GPU",   "Asus GPU",           "AMD GPU",    "MSI GPU",
                "Corsair Memory",    "Patriot Memory", "Skill Memory",
                "Samsung HDD",       "WD HDD",         "Seagate HDD",        "Intel HDD",
                "Samsung SSD",       "WD SSD",         "Seagate SSD",        "Intel SSD",
                "Samsung Monitor",   "Asus Monitor",   "LG Monitor",         "HP Monitor"
            };
            string[] countries = { "USA", "UK", "France", "Canada", "Poland", "Japan", "Germany" };
            string[] status    = { "Packing", "Shipped", "Delivered" };

            var products = new List <Product>();

            for (int i = 0; i < count; i++)
            {
                var id           = DataGenerator.Pad((int)count - i, count.ToString().Length);
                var price        = Math.Round((DataGenerator.GetNumber(10000, 90000) / 100), 2);
                var orderCount   = (int)DataGenerator.GetNumber(4, 30);
                var orderValue   = Math.Round((price * orderCount), 2);
                var orderShipped = (int)DataGenerator.GetNumber(30, 100);
                var margin       = DataGenerator.GetNumber(5, 10);
                var profit       = Math.Round(orderValue * (margin / 100));
                var country      = DataGenerator.GetItem(countries);

                products.Add(new Product()
                {
                    CountryFlag  = DataGenerator.GetCountryFlag(country),
                    CountryName  = country,
                    Margin       = margin,
                    OrderCount   = orderCount,
                    OrderHistory = GetOrderHistory(26),
                    OrderShipped = orderShipped,
                    OrderValue   = orderValue,
                    OrderDate    = DataGenerator.GetDate(),
                    ProductID    = id,
                    ProductName  = DataGenerator.GetItem(names),
                    ProductPrice = price,
                    Profit       = profit,
                    //ReturnRate = GetReturnRates(26),
                    Status = DataGenerator.GetItem(status)
                });
            }

            return(products);
        }
        public static List <Sale> Create(int?count)
        {
            if (count == null)
            {
                count = 100;
            }

            string[] names =
            {
                "Intel CPU",         "AMD CPU",
                "Intel Motherboard", "AMD Motherboard","NVIDIA Motherboard",
                "NVIDIA GPU",        "GIGABYTE GPU",   "Asus GPU",           "AMD GPU",    "MSI GPU",
                "Corsair Memory",    "Patriot Memory", "Skill Memory",
                "Samsung HDD",       "WD HDD",         "Seagate HDD",        "Intel HDD",
                "Samsung SSD",       "WD SSD",         "Seagate SSD",        "Intel SSD",
                "Samsung Monitor",   "Asus Monitor",   "LG Monitor",         "HP Monitor"
            };
            string[] countries = { "USA", "UK", "France", "Canada", "Poland", "Japan", "Germany" };
            string[] status    = { "Packing", "Shipped", "Delivered" };

            var sales = new List <Sale>();

            for (var i = 0; i < count; i++)
            {
                var price   = DataGenerator.GetNumber(100, 900);
                var items   = DataGenerator.GetNumber(10, 80);
                var value   = price * items;
                var margin  = DataGenerator.GetNumber(3, 10);
                var profit  = Math.Round((price * margin / 100) * items);
                var country = DataGenerator.GetItem(countries);
                var city    = DataGenerator.GetCity(country);

                sales.Add(new Sale
                {
                    ID           = DataGenerator.Pad(1001 + i, 4),
                    BundlePrice  = price,
                    ProductPrice = price,
                    Margin       = margin,
                    OrderDate    = DataGenerator.GetDate(),
                    OrderItems   = items,
                    OrderValue   = value, //  Math.round(value / 1000) + "," + Math.round(value % 1000),
                    ProductName  = DataGenerator.GetItem(names),
                    Profit       = profit,
                    City         = city,
                    Country      = country,
                    CountryFlag  = DataGenerator.GetCountryFlag(country),
                    Status       = DataGenerator.GetItem(status)
                });
            }
            return(sales);
        }
        public static List <RealEstate> Create(int?count)
        {
            if (count == null)
            {
                count = 100;
            }

            string[] property  = { "Townhouse", "Single", "Condo", "Villa" };
            string[] emails    = { "estates.com", "remax.com", "zillow.com", "realtor.com", "coldwell.com" };
            string[] countries = { "USA", "UK", "France", "Canada", "Poland", "Japan", "Germany" };
            var      houses    = new List <RealEstate>();

            for (var i = 0; i < count; i++)
            {
                var year = DataGenerator.GetNumber(1950, 2015);
                var age  = 2020 - year;

                var gender    = DataGenerator.GetGender();
                var firstName = DataGenerator.GetNameFirst(gender);
                var lastName  = DataGenerator.GetNameLast();
                var initials  = firstName.Substring(0, 1).ToLower();
                var email     = initials + firstName.ToLower() + "@" + DataGenerator.GetItem(emails);
                var street    = DataGenerator.GetStreet();
                var country   = DataGenerator.GetItem(countries);
                var city      = DataGenerator.GetCity(country);

                houses.Add(new RealEstate
                {
                    Address     = street,
                    Age         = age,
                    Agent       = firstName + " " + lastName,
                    Area        = DataGenerator.GetNumber(50, 300),
                    Baths       = DataGenerator.GetNumber(1, 3),
                    Built       = year,
                    City        = city,
                    Country     = country,
                    CountryFlag = DataGenerator.GetCountryFlag(country),
                    Email       = email,
                    ID          = DataGenerator.Pad(i + 1001, 4),
                    Phone       = DataGenerator.GetPhone(),
                    Price       = DataGenerator.GetNumber(210, 900) * 1000,
                    Property    = DataGenerator.GetItem(property),
                    Rooms       = DataGenerator.GetNumber(2, 5),
                    SaleDate    = DataGenerator.GetDate(),
                    Street      = street
                });
            }
            return(houses);
        }