public RepositoryActionResult <MemberMerge> MergeMembers(MemberMerge memberMerge) { try { var paramz = new List <SqlParameter>(); paramz.Add(new SqlParameter("sourceMemberId", memberMerge.SourceMemberId)); paramz.Add(new SqlParameter("targetMemberId", memberMerge.TargetMemberId)); Func <SqlDataReader, int> readFx = (reader) => { return((int)reader["success"]); }; var success = _executor.ExecuteSql <int>("MergeMembers", CommandType.StoredProcedure, paramz, readFx); if (success.FirstOrDefault() > 0) { return(new RepositoryActionResult <MemberMerge>(memberMerge, RepositoryActionStatus.Ok)); } else { return(new RepositoryActionResult <MemberMerge>(memberMerge, RepositoryActionStatus.Error)); } } catch (Exception ex) { return(new RepositoryActionResult <MemberMerge>(memberMerge, RepositoryActionStatus.Error, ex)); } }
public IHttpActionResult MergeMembers(MemberMerge memberMerge) { try { if (memberMerge == null) { return(BadRequest()); } var result = _repository.MergeMembers(memberMerge); if (result.Status == RepositoryActionStatus.Ok) { return(Ok(result.Entity)); } else if (result.Status == RepositoryActionStatus.NotFound) { return(NotFound()); } return(BadRequest()); } catch (Exception ex) { ErrorHelper.ProcessError(_logger, ex, nameof(Post)); return(InternalServerError()); } }