Utilizzerà il livello di servizio direttamente dal controller o userà il comando, l'approccio del gestore di comandi per elaborare la richiesta dall'API web asp.net?

1

Ho intenzione di creare una semplice applicazione API web asp.net che invierà la richiesta al servizio di terze parti e quindi restituirà la risposta al cliente.

Prima di inviare una richiesta al servizio esterno,
Devo preparare il carico utile della richiesta dal DB e devo anche convalidarlo.
Dopo la convalida, invierò questo payload al servizio di terze parti tramite http-client e restituirò la risposta al client.
Qui posso creare una classe di servizio che farà tutto per me come la preparazione del modello, la convalida, l'invio di una richiesta al servizio esterno e il ritorno della risposta. Poi posso chiamare il servizio dalla classe controller. Questo è un approccio.

Un altro approccio può essere, posso creare un comando, un gestore di comandi e una classe di servizio. In questo caso, la preparazione del payload e la convalida verranno eseguite dal gestore comandi e la mia classe di servizio sarà pulita. Ma in questo approccio il problema è "secondo la regola / best practice il gestore di comandi dovrebbe essere nullo", ma qui ho bisogno di una risposta immediata dal servizio di terze parti.

Quindi la mia domanda è
Quale dovrebbe essere la soluzione migliore per questo scenario. Devo utilizzare la classe di servizio direttamente dal controller e la classe di servizio eseguirà tutte le operazioni?
o
Userò il gestore di comandi con tipo di ritorno? Aspettati il tuo prezioso suggerimento.
Grazie in anticipo.

    
posta Hasibul 05.05.2017 - 16:34
fonte

0 risposte