IHttpActionResult(webAPI 2.0) instead of HttpResponseMessag
Hi all, I hope everyone is fine, me too. I am being amazed day by day by seeing new features and improvements to MVC from Microsoft. If you have had hands-on experience with MVC and the Web API then you are very familiar with HTTP response
Hi all, I hope everyone is fine, me too. I am being amazed day by day by seeing new features and improvements to MVC from Microsoft. If you have had hands-on experience with MVC and the Web API then you are very familiar with HTTP responses from the Web API.
If we remember the HTTP response creation of Web API 1.0 we used to use write 3 to 4 lines of code to create one full fledge HTTP response by setting the status code and media type with an appropriate message. The style is something like this.
- var response = new HttpResponseMessage(HttpStatusCode.Unauthorized);
-
var tsc = new TaskCompletionSource
(); - tsc.SetResult(response);
- return tsc.Task;
Fine and simple but it is simpler in the Web API 2. We can create the same kind of response with a single line of code.
Here you will see how the ASP.NET Web API converts the return value from a controller into an HTTP response message.
Please note that the feature is available in Web API 2.0, so please ensure that your application is updated to 2.0 versions before trying the following code. We know that a Web API controller action can return any one of the following.
- Void
- HttpResponseMessage
- IHttpActionResult (new in Web API 2.0)
- Some other data type
Now in today's article we will see the third point with an example. To use IHttpResult in your application, you must include “System.WebHttp” and provide a reference of the “system.Web.Http” assembly.
The interface IHttpActionResult contains one any only one method called “ExecuteAsync”. Here is the definition of the interface:
- public interface IHttpActionResult
- {
-
Task
ExecuteAsync(CancellationToken cancellationToken); - }
- public class personController : ApiController
- {
- public IHttpActionResult Get()
- {
- return Ok();
- }
- }
So, when we are returning Ok from a controller/action then the Web API runtime engine is transfers the Ok to a full fledge response message by setting the status code 200 with it. Let's see how it works practically. We will call the action from the client and we will check whether or not it returns an Ok response message. Here is the output from Fiddler.
And we are seeing that the status code is 200 and type is OK. So, now just think how simple it is to create a HTTP response from Web API 2.0.
Ok, you may think, how to embed some value with the HTTP response message? Fine, the next example is for you.
- public class personController : ApiController
- {
- public IHttpActionResult Get()
- {
- return Okstring> ("I am send by HTTP resonse");
- }
- }
Please look that, the response string is coming as a body of HTTP response. Not only string, we can send any complex type of custom data type as a body of the HTTP response message. In the next example we will try to send a list of strings in the body of the
response message with an Ok status. Here is our modified code.
- public IHttpActionResult Get()
- {
- Liststring> names = new Liststring> {
- "Sourav",
- "Ram"
- };
-
return Ok
- string>> (names);
- }
Fine, so we have seen how easy it is to create an Ok HTTP response message in the Web API, just by a single line of code. Not only an Ok message, but we can also return any type of valid HTTP response, let's see a few of them.
Not Found
- public IHttpActionResult Get()
- {
- return NotFound();
- }

Bad Request
- public IHttpActionResult Get()
- {
- return BadRequest();
- }

Unauthorized
In the same way, we can return an unauthorized status code, here is sample code.
- public IHttpActionResult Get()
- {
- return Unauthorized();
- }

Created
The status code for the Created status is 201 and generally the status is returned when the Post() operation is performed successfully. Created takes two parameters, one is the “uri” and the other is content.

Conclusion
In this article we have discussed how to send a HTTP response message with a minimal amount of code. I Hope you have understood this and like it. Happy learning.
http://stackoverflow.com/questions/20903420/how-to-call-asp-net-mvc-webapi-2-method-properly

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Welche Grafikkarte eignet sich für den Core i73770? Die RTX3070 ist eine sehr leistungsstarke Grafikkarte mit hervorragender Leistung und fortschrittlicher Technologie. Egal, ob Sie Spiele spielen, Grafiken rendern oder maschinelles Lernen durchführen, der RTX3070 kommt damit problemlos zurecht. Es nutzt die Ampere-Architektur von NVIDIA, verfügt über 5888 CUDA-Kerne und 8 GB GDDR6-Speicher, was für ein flüssiges Spielerlebnis und hochwertige Grafikeffekte sorgen kann. RTX3070 unterstützt außerdem die Raytracing-Technologie, die realistische Licht- und Schatteneffekte darstellen kann. Alles in allem ist die RTX3070 eine leistungsstarke und fortschrittliche Grafikkarte, die für diejenigen geeignet ist, die hohe Leistung und hohe Qualität anstreben. RTX3070 ist eine Grafikkarte der NVIDIA-Serie. Verwendung von NVID der 2. Generation

Wie wir alle wissen, gibt es bei der Installation von Win11 Einschränkungen wie den UEFI-Start. Kann also die früheste i7-Generation Win11 installieren? Die Installation wird jedoch nicht empfohlen. Kann die i7-Generation mit Win11 installiert werden: Antwort: Die i7-Generation kann mit Win11 installiert werden, aber wenn die Konfiguration zu niedrig ist, friert sie ein, daher wird die Installation von Win11 nicht empfohlen. Win11 begrenzt die CPU hauptsächlich aufgrund die Notwendigkeit eines UEFI-Starts und tpm2.0-Probleme. 2. Dies hindert uns jedoch nur daran, den Update-Push im System normal zu erhalten, und schränkt das PE-System nicht ein. 3. Wir müssen also nur einen USB-Stick verwenden, um Win11 herunterzuladen und Win11 in PE zu installieren. 4. Wenn Sie jedoch win11 ausführen,

Laut Nachrichten vom 6. September wird Intel diesen Monat eine neue Generation der Raptor-Lake-Refresh-Prozessorserie auf den Markt bringen. Die neuesten Nachrichten zeigen, dass das Flaggschiff dieser Serie, der Core i9-14900K, im Single-Core-Test von Geekbench6.1.0 eine hervorragende Leistung erbrachte und eine Punktzahl von 3121 erreichte. Im Vergleich zur vorherigen Generation von 13900K ist dieses Ergebnis um etwa 6 % gestiegen. In Bezug auf die Multi-Core-Leistung ist es zwar etwas schlechter als die Vorgängergeneration, weist aber auch ein starkes Rechenpotenzial auf. Nach Ansicht des Herausgebers profitiert die Leistung des Core i9-14900K-Prozessors von seinem innovativen Design. Der Prozessor nutzt 8 P-Kerne und 16 E-Kerne und nutzt so die Vorteile der Multi-Core-Architektur voll aus. Besonders erwähnenswert ist, dass dieser Prozessor auch Th einführt

1. Einführung Da das Projekt vom Front- und Back-End getrennt ist, werden die API-Schnittstelle und das Web-Front-End an verschiedenen Standorten bereitgestellt. Im vorherigen Artikel verwendet die domänenübergreifende Anforderungslösung von webapiajax (Cors-Implementierung) domänenübergreifend Verarbeitung anstelle von JSONP. Aber nach einiger Zeit habe ich ein sehr seltsames Problem entdeckt. Jedes Mal, wenn das Frontend eine Anfrage initiiert, kann ich über die Entwicklertools des Browsers sehen, dass es unter der ersten Methode zwei Anfragen für dieselbe URL gibt Bei der Anfrage handelt es sich um Optionen, die Methode der zweiten Anfrage ist das eigentliche Abrufen oder Posten, und die erste Anfrage gibt keine Daten zurück und die zweite Anfrage gibt normale Daten zurück. 2. Grund für die ersten Optionen

Wenn der Prozessor unseres Computers ein i5-Prozessor ist und wir das System des Computers neu installieren möchten, ist der Herausgeber der Meinung, dass wir basierend auf den Hardwarekonfigurationsanforderungen des Systems entsprechende Überlegungen anstellen sollten. Ist es besser, ein Win7- oder Win10-System zu installieren? auf i5? Nur dasjenige ist das Beste, was von der Hardwarekonfiguration und den persönlichen Bedürfnissen zu Ihnen passt. Werfen wir einen Blick auf die Angaben des Herausgebers, um Einzelheiten zu erfahren. Ich hoffe, es kann Ihnen helfen. Ist es besser, das Win7- oder Win10-System auf einem i5-Prozessor zu installieren? Antwort: Es ist jetzt besser, das Win10-System auf einem i5-Prozessor zu installieren. 1. Da Win7- und Win10-Systeme derzeit von den meisten Benutzern verwendet werden, sind die Konfigurationsanforderungen der beiden Systeme tatsächlich ähnlich. 2. Daher ist das Win10-System in Bezug auf Leistung, Sprachkompetenz und Anwendbarkeit besser als Win7

Der i33240 ist ein ganz klassischer Intel-Prozessor. Ältere Computermodelle verwenden im Grunde immer noch diesen Prozessor. Daher wissen diese alten Gerätebenutzer jetzt, da Win11 kurz vor dem Start steht, nicht, ob ihre Computer das Win11-System installieren können. Im Allgemeinen ist dies möglich. Kann i33240 Win11 installieren: Antwort: i33240 kann Win11 installieren, muss aber in PE installiert werden. 1. Obwohl Microsoft zuvor erklärt hat, dass nur Intel-Prozessoren der achten Generation und höher das Win11-System installieren können. 2. Tatsächlich handelt es sich bei dieser Anforderung jedoch nur um eine Systemerkennung durch Microsoft und sie hat keinen Einfluss auf die normale Verwendung nach der Installation. 3. Solange wir die Systemerkennung überspringen können, können wir sie verwenden

1. Einführung Da das Projekt vom Front- und Back-End getrennt ist, werden die API-Schnittstelle und das Web-Front-End an verschiedenen Standorten bereitgestellt. Im vorherigen Artikel verwendet die domänenübergreifende Anforderungslösung von webapiajax (Cors-Implementierung) domänenübergreifend Verarbeitung anstelle von JSONP. Aber nach einiger Zeit habe ich ein sehr seltsames Problem entdeckt. Jedes Mal, wenn das Frontend eine Anfrage initiiert, kann ich über die Entwicklertools des Browsers sehen, dass es unter der ersten Methode zwei Anfragen für dieselbe URL gibt Bei der Anfrage handelt es sich um Optionen, die Methode der zweiten Anfrage ist das eigentliche Abrufen oder Posten, und die erste Anfrage gibt keine Daten zurück und die zweite Anfrage gibt normale Daten zurück. 2. Grund für die ersten Optionen

Linux ist ein leistungsstarkes Betriebssystem mit vielen nützlichen Befehlen und Tipps, die Ihnen helfen, es effizienter zu nutzen. 1. Überprüfen Sie den Prüfwert der Datei. Während des Kopier- oder Übertragungsvorgangs kann die Datei beschädigt oder geändert werden. In diesem Fall kann der Prüfwert zur Überprüfung verwendet werden. Normalerweise müssen wir bei unserer Arbeit einige Schnittstellenprogramme verwenden, die von anderen Teams bereitgestellt werden. Wenn die Ausführungsergebnisse dieser Programme nicht den Erwartungen entsprechen, vergleichen wir die MD5-Prüfwerte beider Parteien, um die Konsistenz der Daten zu bestätigen. Es gibt viele Möglichkeiten, den Prüfwert einer Datei zu generieren. Zu den häufig verwendeten gehören die MD5-Summenprüfung, die CRC-Prüfung, die Summenprüfung usw. Die Befehle lauten: md5sumfile_namecksumfile_namesum-Algorithmus-Parameterdatei
