public TenantModel FetchById(int tenantId)
        {
            // Build up the parameters
            var parameters = new List<SqlParameter>()
            {
                CreateParameter("@TenantId", SqlDbType.Int, tenantId)
            };

            var dataSet = FetchFilteredData("Sp_Fetch_Tenant_ById", parameters);

            // Check if any data
            if (dataSet.Tables.Count <= 0 || dataSet.Tables[0].Rows.Count <= 0)
            {
                return null;
            }

            // Return the first row
            var tenant = dataSet.Tables[0].Rows[0];

            var domainModel = new TenantModel()
            {
                TenantId = Cast<int>(tenant["TenantId"]),
                ProvisioningOptionId = Cast<int?>(tenant["ProvisioningOptionId"]),
                ThemeId = Cast<int?>(tenant["ThemeId"]),
                SiteName = tenant["SiteName"].ToString(),
                DataCenter = tenant["DataCenter"].ToString(),
                AzureServicesProvisioned = Cast<bool>(tenant["AzureServicesProvisioned"]),

                ProvisioningOption = tenant["ProvisioningOption"].ToString(),
                ProvisioningOptionCode = tenant["ProvisioningOptionCode"].ToString(),
                Theme = tenant["Theme"].ToString(),
                ThemeCode = tenant["ThemeCode"].ToString(),

                OrganizationId = tenant["OrganizationId"].ToString(),
                SubscriptionId = tenant["SubscriptionId"].ToString(),
                Username = tenant["Username"].ToString(),
            };

            return domainModel;
        }
        private static ProvisioningParameters GetParameters(int day, IEnumerable<AzureLocation> dataCenters, TenantModel scheduleTenant, TenantModel day1Tenant, bool isAdminInterface)
        {
            // Default Parameters
            var parameters = new ProvisioningParameters()
            {
                Tenant = new Tenant()
                {
                    TenantId = scheduleTenant.TenantId,
                    SiteName = scheduleTenant.SiteName,
                    Theme = scheduleTenant.Theme,
                },
                Properties = new Properties()
                {
                    LocationPrimary = scheduleTenant.DataCenter,
                    TargetUsername = scheduleTenant.Username,
                    TargetSubscription = scheduleTenant.SubscriptionId,
                    TargetTenant = scheduleTenant.OrganizationId,
                    IsRunningFromAdminInterface = isAdminInterface,
                    V12Locations = dataCenters.Select(d => d.Name).ToList(),
                },
            };

            // Add Values
            if (day == 1)
            {
                SetDay1Parameters(parameters, scheduleTenant.Theme);
            }
            else
            {
                SetDay2Parameters(parameters);    
            }

            return parameters;
        }