Gunakan saat Anda ingin membuat metode yang bisa ditunggu tanpa menggunakan kata kunci async. Saya menemukan contoh ini:
public class TextResult : IHttpActionResult
{
string _value;
HttpRequestMessage _request;
public TextResult(string value, HttpRequestMessage request)
{
_value = value;
_request = request;
}
public Task<HttpResponseMessage> ExecuteAsync(CancellationToken cancellationToken)
{
var response = new HttpResponseMessage()
{
Content = new StringContent(_value),
RequestMessage = _request
};
return Task.FromResult(response);
}
}
Di sini Anda membuat implementasi antarmuka IHttpActionResult Anda sendiri untuk digunakan dalam Aksi Web Api. Metode ExecuteAsync diharapkan asinkron tetapi Anda tidak harus menggunakan kata kunci async untuk menjadikannya tidak sinkron dan menunggu. Karena Anda sudah memiliki hasilnya dan tidak perlu menunggu apa pun, lebih baik menggunakan Task.Fromult.