public void Handle(LinkClosedEvent evnt) { var key = KeyUtils.GetStateKey(evnt.AggregateId); var state = _db.GetObject <BlogState>(key); if (state == null) { throw new Exception("Blog has to be started first."); } state.Links.RemoveAll(_ => _.Id == evnt.Url); _db.SetObject(key, state); }
public void Apply(LinkClosedEvent evnt) { var link = _links.FirstOrDefault(_ => string.Equals(_.Url, evnt.Url)); _links.Remove(link); }