public async Task <Guid> InsertAsync(MinerEntity minerEntity) { try { MinerDbEntity miner = new MinerDbEntity(); using var context = this.iDatabaseFactory.GetDbContext(); ////Determine the next ID var newID = Guid.NewGuid(); miner.Id = newID; miner.Name = minerEntity.Name; miner.Quantity = minerEntity.Quantity; miner.Handicap = minerEntity.Handicap; miner.IsLogged = minerEntity.IsLogged; context.Miners.Add(miner); var isInserted = await context.SaveContextChangesAsync() > 0; if (isInserted) { var result = miner.Id; return(result); } throw new Exception("Miner Not Inserted"); } catch (Exception) { throw; } }
public async Task <Guid> InsertAsync(string name) { FaultyService.ThrowRandomException(5); MinerEntity miner = new MinerEntity() { Name = name, Quantity = 0, Handicap = 1, IsLogged = false, }; var result = await this.iMinerRepository.InsertAsync(miner); return(result); }
public async Task <bool> UpdateAsync(MinerEntity minerEntity) { try { using var context = this.iDatabaseFactory.GetDbContext(); var miner = context.Miners.FirstOrDefault(x => x.Id == minerEntity.Id); if (miner != null) { miner.Handicap = minerEntity.Handicap; miner.Name = minerEntity.Name; miner.Quantity = minerEntity.Quantity; miner.IsLogged = minerEntity.IsLogged; int result = await context.SaveContextChangesAsync(); return(result > 0); } return(false); } catch (Exception) { throw; }; }