web-dev-qa-db-fra.com

IHttpActionResult vs IActionResult

Je crée une API utilisant .NET Core 2 pour fournir des données pour de nombreuses applications développées dans différentes technologies. Je retourne actuellement IActionresult à partir de mes méthodes. J'ai étudié la meilleure option pour renvoyer les données et j'ai vu quelques exemples utilisant IHttpActionResult. Maintenant, je ne sais pas quel type est le meilleur pour revenir.

Quelle est la différence entre IHttpActionResult et IActionresult?

10
Guilherme Ferreira

IHttpActionResult est pour ASP.NET Web Api, tandis que IActionResult est pour ASP.NET Core. Il n'y a rien de tel que "Web Api" dans ASP.NET Core. C'est juste "Core". Cependant, certaines personnes font encore référence à la création d'une API ASP.NET Core en tant que "Web Api", ce qui ajoute à la confusion.

17
Chris Pratt

Cela dépend de la version de ASP.NET Que vous allez utiliser. Cela peut être la version .NET Core Ou la version traditionnelle.

Comme mentionné par Chris, vous ne pouvez utiliser que IActionResult dans ASP.NET Core:

https://docs.Microsoft.com/en-us/aspnet/core/web-api/action-return-types?view=aspnetcore-2.1#iactionresult-type

Je crée une API

Eh bien, si vous utilisez le traditionnel ASP.NET - au lieu de .NET Core, Vous êtes d'accord pour utiliser IHttpActionResult: https://docs.Microsoft.com/en -us/aspnet/web-api/overview/getting-started-with-aspnet-web-api/action-results , sinon restez avec IActionResult.

4
Giovanni Terlingen