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;
            }
        }
Пример #2
0
        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;
            };
        }