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; }