public void SaveBuilding(Building building) { using (BuildingDbContext context = new BuildingDbContext()) { context.Buildings.AddOrUpdate(building); context.SaveChanges(); } foreach (var floor in building.Floors) { //SaveFloor(floor); } }
private void SaveFloor(LiveFloor floor) { using (BuildingDbContext context = new BuildingDbContext()) { context.Floors.AddOrUpdate(floor); context.SaveChanges(); } foreach (Room room in floor.Rooms) { if (room.GetType() == typeof(LiveRoom)) { SaveLiveRoom((LiveRoom)room); } else if (room.GetType() == typeof(SensorlessRoom)) { SaveSensorlessRoom((SensorlessRoom)room); } } }
private void SaveSensorlessRoom(SensorlessRoom sensorlessRoom) { using (BuildingDbContext context = new BuildingDbContext()) { context.SensorlessRoom.AddOrUpdate(sensorlessRoom); context.SaveChanges(); } foreach (Coordinates coordinates in sensorlessRoom.Coordinates) { SaveCoordinates(coordinates); } }
private void SaveSmapEndpoints(Endpoints endpoints) { using (BuildingDbContext context = new BuildingDbContext()) { context.Endpoints.AddOrUpdate(endpoints); context.SaveChanges(); } }
private void SaveCorners(Corners corners) { using (BuildingDbContext context = new BuildingDbContext()) { context.Corners.AddOrUpdate(corners); context.SaveChanges(); } }
private void SaveLiveRoom(LiveRoom liveRoom) { using (BuildingDbContext context = new BuildingDbContext()) { context.SensorRoom.AddOrUpdate(liveRoom); context.SaveChanges(); } SaveCorners(liveRoom.Corners); if (liveRoom.Endpoints != null) SaveSmapEndpoints(liveRoom.Endpoints); }