...私は実装に関してスティックの間違った終わりを取得することができる感覚を持っているタスクを待つことはできません<MyObject>私は次のコードは、「待つことはできません」というエラーを投げ続ける理由を把握することができません
非同期APIアクションです。誰かが私が間違っているところで私を指示することはできますか?
APIアクション:
[HttpGet]
public async Task<IHttpActionResult> Get(int id)
{
var getAnimal = animalManager.Get(id);
var animal = await getAnimal;
return Ok(animal);
}
マネージャー/サービス方法:
public async Task<Animal> Get(int id)
{
return await Task.Run(() => { return animalRepository.Get(id); });
}
リポジトリ方式(同期):
public Animal Get(int id)
{
var animal = dbSet.Find(id);
if (animal == null)
{
throw new ArgumentNullException("Animal");
}
return animal;
}
サービスメソッド(または任意の 'async'メソッドには' Async'サフィックスがあるので、 'GetAsync'という名前にしてください) –
' await'ではこのエラーが発生します。あなたが結果を見つけられなかった場合、 'ArgumentNullException'が間違ったエラーと思われることを除いて、最初はすべて見えるでしょう。 –
コンパイル時または実行時のエラーですか? ' FindAsync() 'というDbSetの非同期バージョンを使用しようとしましたか? ? – pwas