/// <summary> /// Add to the PimsContext 'context' with the specified data in 'entities'. /// </summary> /// <typeparam name="T"></typeparam> /// <param name="context"></param> /// <param name="entities"></param> /// <returns></returns> public static PimsContext AddAndSaveRange <T>(this PimsContext context, IEnumerable <T> entities) where T : class { context.Set <T>().AddRange(entities); context.SaveChanges(); return(context); }
/// <summary> /// Add to the PimsContext 'context' with the specified data in 'entities'. /// </summary> /// <typeparam name="T"></typeparam> /// <param name="context"></param> /// <param name="entity"></param> /// <returns></returns> public static PimsContext AddAndSaveChanges <T>(this PimsContext context, params T[] entity) where T : class { context.Set <T>().AddRange(entity); context.SaveChanges(); return(context); }
/// Generate a new project number in the database. /// NOTE - this saves current changes to the datasource and should be called before other changes. /// If the subsequent save to the database fails the project number will be unused and result in an orphan. /// </summary> /// <param name="context"></param> /// <returns></returns> public static Entity.ProjectNumber GenerateProjectNumber(this PimsContext context) { var projectNumber = new Entity.ProjectNumber(); context.ProjectNumbers.Add(projectNumber); context.SaveChanges(); return(projectNumber); }
/// <summary> /// Initializes the database with default data to support other tables. /// </summary> /// <param name="context"></param> /// <returns></returns> public static PimsContext SeedDatabase(this PimsContext context) { context.AddRange(EntityHelper.CreateDefaultPropertyClassifications()); context.AddRange(EntityHelper.CreateDefaultProvinces()); context.AddRange(EntityHelper.CreateDefaultAdministrativeAreas()); context.AddRange(EntityHelper.CreateDefaultRoles()); context.AddRange(EntityHelper.CreateDefaultBuildingPredominateUses()); context.AddRange(EntityHelper.CreateDefaultBuildingConstructionTypes()); context.AddRange(EntityHelper.CreateDefaultBuildingOccupantTypes()); context.AddRange(EntityHelper.CreateDefaultAgencies()); context.AddRange(EntityHelper.CreateDefaultTierLevels()); context.AddRange(EntityHelper.CreateDefaultProjectRisks()); context.SaveChanges(); return(context); }
/// <summary> /// Initializes the database with default data to support other tables. /// </summary> /// <param name="context"></param> /// <returns></returns> public static PimsContext SeedDatabase(this PimsContext context) { var countries = EntityHelper.CreateDefaultCountries(); var regions = EntityHelper.CreateDefaultRegions(); var organizationTypes = EntityHelper.CreateDefaultOrganizationTypes(); var organizationIdentifierTypes = EntityHelper.CreateDefaultOrganizationIdentifierTypes(); context.AddRange(countries); context.AddRange(regions); context.AddRange(organizationTypes); context.AddRange(organizationIdentifierTypes); context.AddRange(EntityHelper.CreateDefaultRoles()); context.AddRange(EntityHelper.CreateDefaultPropertyTypes()); context.AddRange(EntityHelper.CreateDefaultPropertyClassificationTypes()); context.AddRange(EntityHelper.CreateDefaultPropertyTenureTypes()); context.AddRange(EntityHelper.CreateDefaultPropertyAreaUnitTypes()); context.AddRange(EntityHelper.CreateDefaultDataSourceTypes()); context.AddRange(EntityHelper.CreateDefaultContactMethodTypes()); context.AddRange(EntityHelper.CreateDefaultProvinces(countries.First())); context.AddRange(EntityHelper.CreateDefaultDistricts(regions.First())); context.AddRange(EntityHelper.CreateDefaultOrganizations(organizationTypes.First(), organizationIdentifierTypes.First())); context.SaveChanges(); return(context); }
/// <summary> /// Save the changes that are in memory context to the datasource. /// </summary> /// <param name="context"></param> /// <returns></returns> public static PimsContext SaveChanges(this PimsContext context) { context.SaveChanges(); return(context); }