コード例 #1
0
        public bool RegisterUserAndCharity(RegistrationInfo registrationInfo)
        {
            bool result  = false;
            var  charity = new Charity
            {
                Name = registrationInfo.CharityName,
                RegisteredCharityNumber = registrationInfo.CharityName,
                SubDomain = registrationInfo.SubDomain
            };

            using (var scope = new TransactionScope())
            {
                var newCharity = CharitiesDataAccess.Insert(charity);
                if (newCharity == null)
                {
                    throw new ArgumentNullException("newCharity");
                }


                // Attempt to register the user
                MembershipCreateStatus createStatus;
                Membership.CreateUser(registrationInfo.UserIdentifier, registrationInfo.Password, registrationInfo.UserIdentifier, null, null, true, null, out createStatus);
                var user = Membership.GetUser(registrationInfo.UserIdentifier);
                if (user == null)
                {
                    throw new ArgumentNullException("user");
                }

                var charityMembership = new CharityMembership
                {
                    CharityId = newCharity.Id,
                    UserName  = user.UserName
                };
                var newCharityMembership = CharitiesMembershipsDataAccess.Insert(charityMembership);

                if (createStatus == MembershipCreateStatus.Success && newCharityMembership != null)
                {
                    result = true;
                    scope.Complete();
                }
            }
            return(result);
        }
コード例 #2
0
 public void Delete(CharityMembership charityMembership)
 {
     _db.CharityMembership.DeleteById(charityMembership.Id);
 }
コード例 #3
0
 public void Update(CharityMembership charityMembership)
 {
     _db.CharityMembership.UpdateById(charityMembership);
 }
コード例 #4
0
 public CharityMembership Insert(CharityMembership charityMembership)
 {
     return(_db.CharityMembership.Insert(charityMembership));
 }