Как опубликовать sh сообщение с помощью MediatR, чтобы указать канал c и получать разные сообщения с разных каналов? - PullRequest
0 голосов
/ 29 мая 2020

Я начинаю работать с MediatR в asp. net core 3.1. Я хочу предоставить инфраструктуру для получения данных и публикации sh их по разным каналам, и в разных службах получать разные данные на основе этой службы. Я также читал о Polymorphic Dispatch, но не смог найти решение.

это то, что я сделал в моем обработчике и издателе, но в части обработчика я хочу иметь возможность получать разные данные на основе этого сервис.

Обработчик

public class MessageHandler<TInput> : INotificationHandler<TInput> where TInput : INotification
    {
        public async Task Handle(TInput notification, CancellationToken cancellationToken)
        {
            await Task.CompletedTask;
        }

    }

Издатель

public interface IPublisher<TEntity>
    {
        Task Notify(TEntity entity);
    }

    public class Publisher<TEntity> : IPublisher<TEntity>
    {
        private readonly IMediator _mediator;

        public Publisher(IMediator mediator)
        {
            _mediator = mediator;
        }

        public async Task Notify(TEntity notification)
        {
            await _mediator.Publish(notification);
        }

    }
...