Was wird tatsächlich von einer Web-API-Methode mit der folgenden Signatur zurückgegeben?Was gibt eine asynchrone Web-API-Methode zurück?
[HttpPost]
public async Task<IHttpActionResult> Post([FromBody] ReviewViewModel review)
{
using (var context = new BooksContext())
{
var book = await context.Books.FirstOrDefaultAsync(b => b.Id == review.BookId);
if (book == null)
{
return NotFound();
}
var newReview = context.Reviews.Add(new Review
{
BookId = book.Id,
Description = review.Description,
Rating = review.Rating
});
await context.SaveChangesAsync();
return Ok(new ReviewViewModel(newReview));
}
}
Methode entnommen aus: http://www.developerhandbook.com/c-sharp/create-restful-api-authentication-using-web-api-jwt/
ich bedenken, dass es entweder:
1) Der Rahmen gibt nicht eine Antwort auf den Aufruf Client bis .IsCompleted wahr ist, oder 2) Das Framework kehrt zum Client zurück, aber der Client muss die Situation mit der Situation behandeln, oder 3) Etwas ganz anderes.
Es ist Nummer 1) –
Sobald Sie die Zustandsmaschine hinter dem async syntatic Zucker verstehen, ist es etwas einfacher zu erkennen, was wirklich geschieht. –
Ich dachte, ich verstehe die Zustandsmaschine, aber das wäre die Web-API, die darüber hinaus noch zusätzliche Funktionalität bietet, ja? –