public async Task <IActionResult> PostMember([FromBody] SaveMemberDto saveMemberDto)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var member = mapper.Map <SaveMemberDto, Member>(saveMemberDto);

            //member.CreatedDate = DateTime.Now;

            repository.Add(member);
            await unitOfWork.Complete();

            return(CreatedAtAction("GetMember", new { id = member.Id }, member));
        }
        public async Task <IActionResult> PutMember([FromRoute] int id, [FromBody] SaveMemberDto saveMemberDto)
        {
            //throw new Exception();
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != saveMemberDto.Id)
            {
                return(BadRequest());
            }

            var member = await repository.GetMember(id);

            if (!repository.MemberExists(id))
            {
                return(NotFound());
            }
            else
            {
                mapper.Map(saveMemberDto, member);
            }

            try
            {
                repository.Update(member);
                await unitOfWork.Complete();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!repository.MemberExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }
            member = await repository.GetMember(id);

            var result = mapper.Map <Member, MemberDto>(member);

            return(Ok(result));
        }