Ich habe eine Methode, die async sein muss, weil es eine Asynchron-Methode ruft:eine Aufgabe Rückkehr ist komplett in asyc Methode
public async Task TransitionToPendingApproval(Guid id)
{
// Update status to pending approval
var cimp = Repository.GetById(id);
ChangeCimpStatus(cimp, Dom.CimpStatus.PendingApproval);
await EmailPendingApprovalAsync(cimp).ConfigureAwait(true);
return System.Threading.Tasks.Task.CompletedTask;
}
kehre ich möchte nur, dass die Aufgabe beendet hat, aber ich bin immer diese Fehler:
Since 'CimpProvider.TransitionToPendingApproval(Guid)' is an async method that returns 'Task', a return keyword must not be followed by an object expression. Did you intend to return 'Task<T>'?
Was mache ich falsch und wie behebe ich es?
einfach nichts in Ihrem Fall zurückkehren (entfernen letzte Zeile vollständig). – Evk
OK, können Sie erklären warum? –
Wenn Sie die Methode mit "async" markieren, wird sie automatisch in Task eingebunden, sodass sie (standardmäßig) bereits Task zurückgibt. Wenn es Task zurückgibt - müssen Sie das T (etwas zurückgeben) bereitstellen. Wenn es nur Aufgabe zurückgibt - das ist analog zu Rückgabe void-Methode. –
Evk