public BllFilepathLib Create(BllFilepathLib entity) { var ormLib = uow.FilepathLibs.CreateAndReturnOrm(mapper.MapToDal(entity)); uow.Commit(); entity.Id = ormLib.id; FilepathMapper EntityMapper = new FilepathMapper(uow); foreach (var Entity in entity.Entities) { var dalEntity = EntityMapper.MapToDal(Entity); dalEntity.Lib_id = entity.Id; var ormEntity = uow.Filepaths.CreateAndReturnOrm(dalEntity); uow.Commit(); Entity.Id = ormEntity.id; } return(entity); }
public BllFilepathLib Update(BllFilepathLib entity) { FilepathMapper EntityMapper = new FilepathMapper(); foreach (var Entity in entity.Entities) { var dalEntity = EntityMapper.MapToDal(Entity); dalEntity.Lib_id = entity.Id; if (Entity.Id == 0) { var ormEntity = uow.Filepaths.CreateAndReturnOrm(dalEntity); uow.Commit(); Entity.Id = ormEntity.id; } else { uow.Filepaths.Update(dalEntity); } } var EntitysWithLibId = ((IGetterByLibId <DalFilepath>)uow.Filepaths).GetEntitiesByLibId(entity.Id); foreach (var Entity in EntitysWithLibId) { bool isTrashEntity = true; foreach (var item in entity.Entities) { if (item.Id == Entity.Id) { isTrashEntity = false; break; } } if (isTrashEntity == true) { uow.Filepaths.Delete(Entity.Id); } } uow.Commit(); return(entity); }