コード例 #1
0
        public async Task <bool> Update(ClaimAggregate claim)
        {
            if (claim == null)
            {
                throw new ArgumentNullException(nameof(claim));
            }

            using (var transaction = _context.Database.BeginTransaction())
            {
                try
                {
                    var connectedClaim = await _context.Claims.FirstOrDefaultAsync(c => c.Code == claim.Code).ConfigureAwait(false);

                    if (connectedClaim == null)
                    {
                        return(false);
                    }

                    connectedClaim.IsIdentifier = claim.IsIdentifier;
                    await _context.SaveChangesAsync().ConfigureAwait(false);

                    transaction.Commit();
                }
                catch (Exception ex)
                {
                    _managerEventSource.Failure(ex);
                    transaction.Rollback();
                    return(false);
                }
            }

            return(true);
        }
コード例 #2
0
 public static ClaimAggregate Copy(this ClaimAggregate claim)
 {
     return(new ClaimAggregate
     {
         Code = claim.Code,
         CreateDateTime = claim.CreateDateTime,
         IsIdentifier = claim.IsIdentifier,
         UpdateDateTime = claim.UpdateDateTime,
         Value = claim.Value
     });
 }
コード例 #3
0
        public static ClaimResponse ToDto(this ClaimAggregate claim)
        {
            if (claim == null)
            {
                throw new ArgumentNullException(nameof(claim));
            }

            return(new ClaimResponse
            {
                Code = claim.Code,
                CreateDateTime = claim.CreateDateTime,
                IsIdentifier = claim.IsIdentifier,
                UpdateDateTime = claim.UpdateDateTime
            });
        }
コード例 #4
0
        public Task <bool> Update(ClaimAggregate claim)
        {
            if (claim == null)
            {
                throw new ArgumentNullException(nameof(claim));
            }

            var result = _claims.FirstOrDefault(c => c.Code == claim.Code);

            if (result == null)
            {
                return(Task.FromResult(false));
            }

            result.Value          = claim.Value;
            result.UpdateDateTime = claim.UpdateDateTime;
            return(Task.FromResult(true));
        }