public PreconditionNotMetException(CommandPrecondition precondition)
     : base("Precondition was not met: " + precondition)
 {
     if (precondition == null)
     {
         throw new ArgumentNullException("precondition");
     }
     Precondition = precondition;
 }
 public PreconditionNotMetException(
     string message,
     Guid aggregateId,
     string etag = null) : base(message)
 {
     Precondition = new CommandPrecondition
     {
         AggregateId = aggregateId,
         ETag = etag
     };
 }