示例#1
0
        public void Handle(JoinGym command)
        {
            Membership membership = Membership.Start(MembershipId.Parse(command.Id), DateOfBirth.Parse(command.DateOfBirth));

            membership.ApplyPromotions(repository.GetById <PromotionsList>(PromotionsListId.Value), dateTimeProvider);
            repository.Add(membership);
        }
示例#2
0
 private Membership(MembershipId id, DateOfBirth dateOfBirth)
     : base(id)
 {
     Id          = id;
     DateOfBirth = dateOfBirth;
     RaiseEvent(new MembershipStarted {
         MembershipId = id, InitialFee = StandardFee
     });
 }
示例#3
0
 public static Membership Start(MembershipId id, DateOfBirth dateOfBirth)
 {
     return(new Membership(id, dateOfBirth));
 }