public void RegisterUseCase <TRequest, TImplement>()
     where TRequest : IInputData
     where TImplement : class, IInputPort <TRequest>
 {
     services.AddTransient <TImplement>();
     bus.Register <TRequest, TImplement>();
 }
 public void RegisterUseCase <TRequest, TImplement>()
     where TRequest : IRequest <IResponse>
     where TImplement : class, IUseCase <TRequest, IResponse>
 {
     services.AddSingleton <TImplement>();
     bus.Register <TRequest, TImplement>();
 }