awaitキーワードを使用し、 Task<> を返すメソッドとのインターフェースを持つ(モック、リモーティング、または類似のため) インターフェースに対して実装する場合:
interface IFoo
{
Task<BigInteger> CalculateFaculty(int value);
}
コンパイラはエラーを出します:
「await」演算子は、非同期メソッド内でのみ使用できます。このメソッドを「async」修飾子でマークし、戻り値の型を「Task」に変更することを検討してください
戻り値の型が「タスク」であることを考えると、これは少し珍しいことです。この問題はイライラするものであり、継続スタイルを使用するか、このインターフェイスの周りに追加のプロキシを提供することで「フォールバック」する必要があります (したがって、ほとんどすべてのインターフェイスについて、実際には実現できません)。
誰もこれを解決する方法について良い考えを持っていますか?