Ejemplo n.º 1
0
        public async Task ExecuteAsync(ICommand command, string correlationId = null)
        {
            if (command == null)
            {
                throw new ArgumentNullException(nameof(command));
            }

            var             commandType = command.GetType();
            ICommandHandler handler;

            if (_registry.TryGetHandler(commandType, out handler))
            {
                Logging.Darjeel.TraceInformation($"Command '{commandType.FullName}' handled by '{handler.GetType().FullName}.");
                await((dynamic)handler).HandleAsync((dynamic)command);
            }
        }