public async Task Seed()

in TailwindTraders.Website/Source/Tailwind.Traders.Web/Standalone/Data/DatabaseInitializer.cs [26:57]


        public async Task Seed()
        {
            if (string.IsNullOrEmpty(connectionString))
            {
                logger.LogInformation("SQL connection string empty, skipping seeding.");
                return;
            }

            logger.LogInformation("Checking if database needs seeding...");
            using var conn = new SqlConnection(connectionString);
            await conn.OpenAsync();
            if (await IsDatabaseEmpty(conn))
            {
                await CreateBrandsTable(conn);
                await SeedTable(conn, "Brands", "https://raw.githubusercontent.com/microsoft/TailwindTraders-Backend/main/Source/Services/Tailwind.Traders.Product.Api/Setup/ProductBrands.csv");
                await CreateTypesTable(conn);
                await SeedTable(conn, "Types", "https://raw.githubusercontent.com/microsoft/TailwindTraders-Backend/main/Source/Services/Tailwind.Traders.Product.Api/Setup/ProductTypes.csv");
                await CreateTagsTable(conn);
                await SeedTable(conn, "Tags", "https://raw.githubusercontent.com/microsoft/TailwindTraders-Backend/main/Source/Services/Tailwind.Traders.Product.Api/Setup/ProductTags.csv");
                await CreateFeaturesTable(conn);
                await SeedTable(conn, "Features", "https://raw.githubusercontent.com/microsoft/TailwindTraders-Backend/main/Source/Services/Tailwind.Traders.Product.Api/Setup/ProductFeatures.csv");
                await CreateProductsTable(conn);
                await SeedTable(conn, "Products", "https://raw.githubusercontent.com/microsoft/TailwindTraders-Backend/main/Source/Services/Tailwind.Traders.Product.Api/Setup/ProductItems.csv");

                logger.LogInformation("Seeding completed.");
            }
            else
            {
                logger.LogInformation("Seeding not required.");
            }
            conn.Close();
        }