private void Apply(ProjectRegistered @event) { Id = new ProjectId(@event.ProjectId); _title = new Title(@event.Title); _priority = ProjectPriority.Parse(@event.Priority); if (!string.IsNullOrWhiteSpace(@event.Deadline)) { _deadline = new ProjectDeadline(DateTime.Parse(@event.Deadline)); } }
public Project(Title title, ProjectDeadline deadline) : base(ProjectId.Create(title)) { if (title == null) { throw new ArgumentNullException("title"); } if (deadline == null) { throw new ArgumentNullException("deadline"); } ApplyChange(new ProjectRegistered(Id, title, ProjectPriority.None.DisplayName, deadline)); }