Asp.Net Web API VS Asp.Net MVC
1
. Asp.Net MVC viene utilizzato per creare applicazioni Web che restituiscono sia viste che dati, ma l'API Web Asp.Net viene utilizzato per creare servizi HTTP completi con un modo semplice e semplice che restituisce solo i dati non visualizzati.
2 . L'API Web aiuta a creare servizi REST completi su .NET Framework e supporta anche la negoziazione dei contenuti (si tratta di decidere i dati del formato di risposta migliori che potrebbero essere accettabili dal client. Potrebbe essere JSON, XML, ATOM o altri dati formattati ), self hosting che non si trovano in MVC.
3 . L'API Web si occupa anche della restituzione dei dati in un formato particolare come JSON, XML o qualsiasi altro basato sull'intestazione Accept nella richiesta e non ti preoccupare di questo. MVC restituisce i dati solo in formato JSON utilizzando JsonResult.
4 . Nell'API Web la richiesta è mappata alle azioni in base ai verbi HTTP, ma in MVC è mappata al nome delle azioni.
5 . L'API Web Asp.Net è un nuovo framework e parte del framework ASP.NET di base. L'associazione del modello, i filtri, il routing e altre funzionalità MVC presenti nell'API Web sono diverse da MVC ed esistono nel nuovo assembly System.Web.Http. In MVC, queste imprese esistono con in System.Web.Mvc. Quindi l'API Web può essere utilizzata anche con Asp.Net e come livello di servizio autonomo.
6 . È possibile combinare API Web e controller MVC in un singolo progetto per gestire richieste AJAX avanzate che possono restituire dati in formato JSON, XML o qualsiasi altro e creare un servizio HTTP completo. In genere, questo verrà chiamato self hosting dell'API Web.
7 . Quando hai MVC misto e controller API Web e desideri implementare l'autorizzazione, devi creare due filtri uno per MVC e un altro per l'API Web poiché entrambi sono diversi.
8 . Inoltre, l'API Web è un'architettura leggera e, tranne l'applicazione Web, può essere utilizzata anche con le app per smartphone.
La fonte originale è qui