public static async Task <ICommandDeliveryResult> Receive <T>( this ICommandReceiver <T> receiver, Func <ICommandDelivery <T>, ICommandDeliveryResult> handle, TimeSpan?timeout = null) => await receiver.Receive( async delivery => await Task.Run(() => handle(delivery)), timeout);
public static async Task <ICommandDeliveryResult> Receive <T>( this ICommandReceiver <T> receiver, ICommandHandler <T> handler, TimeSpan?timeout = null) => await receiver.Receive( async delivery => await handler.Handle(delivery), timeout);