private void AddBlueprintEntity(BlueprintEntity converted, IEnumerable <WallEntity> itsWalls, IEnumerable <ColumnEntity> itsColumns, ICollection <Opening> itsOpenings, IEnumerable <SignatureEntity> itsSignatures) { using (BlueBuilderDBContext context = new BlueBuilderDBContext()) { context.Blueprints.Add(converted); UserEntity owner = converted.Owner; if (context.Users.Any(u => u.UserName.Equals(owner.UserName))) { context.Entry(converted.Owner).State = EntityState.Unchanged; } context.Columns.AddRange(itsColumns); context.Walls.AddRange(itsWalls); context.Signatures.AddRange(itsSignatures); MaterialAndEntityConverter materialTranslator = new MaterialAndEntityConverter(); foreach (Opening op in itsOpenings) { string tempName = op.getTemplateName(); OpeningTemplateEntity itsTemplate = context.OpeningTemplates .FirstOrDefault(t => t.Name.Equals(tempName)); OpeningEntity opRecord = materialTranslator.OpeningToEntity(op, itsTemplate, converted); context.Openings.Add(opRecord); } context.SaveChanges(); } }
public Template EntityToOpeningTemplate(OpeningTemplateEntity toConvert) { Template conversion = new Template(toConvert.Name, toConvert.Length, toConvert.HeightAboveFloor, toConvert.Height, (ComponentType)toConvert.ComponentType); return(conversion); }
public OpeningEntity OpeningToEntity(Opening toConvert, OpeningTemplateEntity itsTemplate, BlueprintEntity bearer) { OpeningEntity conversion = new OpeningEntity() { CoordX = toConvert.GetPosition().CoordX, CoordY = toConvert.GetPosition().CoordY, Template = itsTemplate, BearerBlueprint = bearer }; return(conversion); }
private void TryDeleting(Template toDelete) { using (BlueBuilderDBContext context = new BlueBuilderDBContext()) { OpeningTemplateEntity entity = context.OpeningTemplates.FirstOrDefault(ote => ote.Name.Equals(toDelete.Name)); if (entity != null) { context.OpeningTemplates.Remove(entity); context.SaveChanges(); } } }
public OpeningTemplateEntity OpeningTemplateToEntity(Template toConvert) { OpeningTemplateEntity conversion = new OpeningTemplateEntity() { Height = toConvert.Height, Length = toConvert.Length, HeightAboveFloor = toConvert.HeightAboveFloor, Name = toConvert.Name, ComponentType = (int)toConvert.Type }; return(conversion); }
public OpeningTemplateEntity GetTemplateFromOpening(Opening anOpening) { OpeningTemplateEntity extracted = new OpeningTemplateEntity() { Name = anOpening.getTemplateName(), Height = anOpening.HeightAboveFloor(), Length = anOpening.Length(), HeightAboveFloor = anOpening.HeightAboveFloor(), ComponentType = (int)anOpening.GetComponentType() }; return(extracted); }
private void TryModifying(Template entity) { if (!Exists(entity)) { throw new TemplateDoesNotExistException(); } MaterialAndEntityConverter translator = new MaterialAndEntityConverter(); OpeningTemplateEntity record = translator.OpeningTemplateToEntity(entity); using (BlueBuilderDBContext context = new BlueBuilderDBContext()) { context.Entry(record).State = System.Data.Entity.EntityState.Modified; context.SaveChanges(); } }
private void TryAdding(Template entity) { MaterialAndEntityConverter translator = new MaterialAndEntityConverter(); using (BlueBuilderDBContext context = new BlueBuilderDBContext()) { try { OpeningTemplateEntity converted = translator.OpeningTemplateToEntity(entity); context.OpeningTemplates.Add(converted); context.SaveChanges(); } catch (DbUpdateException) { throw new TemplateAlreadyExistsException(); } } }
private Template TrySelectFirstOrDefault(Expression <Func <OpeningTemplateEntity, bool> > aCondition) { Template firstToComply; using (BlueBuilderDBContext context = new BlueBuilderDBContext()) { MaterialAndEntityConverter translator = new MaterialAndEntityConverter(); OpeningTemplateEntity firstRecord = context.OpeningTemplates.FirstOrDefault(aCondition); if (firstRecord == null) { throw new TemplateDoesNotExistException(); } else { firstToComply = translator.EntityToOpeningTemplate(firstRecord); } } return(firstToComply); }