public async Task <BasicResponse> AddInstitution(Institution institution)
        {
            var response = new BasicResponse();

            institution.Id = _institutionRepository.GetNextKey();
            await _institutionRepository.Insert(institution);

            response.WasSuccessful = true;

            return(response);
        }
        public async Task <BasicResponse> AddMember(Member member, int institutionId)
        {
            var response          = new BasicResponse();
            var validationResults = await _membervalidator.ValidateAsync(member, options => options.IncludeRuleSets("New Account Validation"));

            if (validationResults.IsValid)
            {
                member.Id            = _memberRepository.GetNextKey();
                member.InstitutionId = institutionId;

                await _memberRepository.Insert(member);

                response.WasSuccessful = true;

                _eventPublisher.Publish(new MemberCreatedEvent(member));
            }

            return(response);
        }