public void Handle(PostSubmitted @event) { using (var bucket = Persistence.Couchbase.Cluster.OpenBucket()) { var discussion = bucket.GetDocument<Discussion>(@event.DiscussionId); var post = new Post(@event.BodyText, @event.EmailAddressOfPoster, @event.PostNumber); discussion.Content.Posts.Add(post); bucket.Upsert(discussion.Document); } }
private void Apply(PostSubmitted submittedPost) { var emailOfPoster = new EmailAddress(submittedPost.EmailAddressOfPoster); var post = new Post(emailOfPoster, submittedPost.BodyText, submittedPost.PostNumber); _posts.Add(post); }