Вызов команд из другого метода Handle ()

Привет я пользуюсьПростой инжектор Библиотека DI и следит за некоторыми действительно интересными материалами об архитектурной модели, разработанной вокруг шаблона команды:

Meanwhile... on the command side of my architecture Meanwhile... on the query side of my architecture

Контейнер будет управлять временем жизниUnitOfWorkи я использую команды для выполнения определенных функций в базе данных.

У меня вопрос, есть ли у меня команда, напримерAddNewCustomerCommandкоторый, в свою очередь, выполняет другой вызов другой службе (то есть отправляет текстовое сообщение), с точки зрения дизайна это приемлемо или это должно быть сделано на более высоком уровне, и если да, то как лучше это сделать?

Пример кода ниже:

public class AddNewBusinessUnitHandler
    : ICommandHandler<AddBusinessUnitCommand>
{
    private IUnitOfWork uow;
    private ICommandHandler<OtherServiceCommand> otherHandler;

    AddNewBusinessUnitHandler(IUnitOfWork uow, 
        ICommandHandler<OtherServiceCommand> otherHandler)
    {
        this.uow = uow;
        this.otherHandler = otherHandler;
    }

     public void Handle(AddBusinessUnitCommand command)
     {
        var businessUnit = new BusinessUnit()
        {
            Name = command.BusinessUnitName,
            Address = command.BusinessUnitAddress
        };

        var otherCommand = new OtherServiceCommand()
        {
            welcomePostTo = command.BusinessUnitName
        };

        uow.BusinessUnitRepository.Add(businessUnit);

        this.otherHandler.Handle(otherCommand);
     }
}

Ответы на вопрос(1)

Ваш ответ на вопрос