ReSharper 2026.1 ヘルプ

コード検査: 'await' 演算子のない非同期メソッド ('await' 演算子なしの非同期タスクメソッドのオーバーライド)

async 修飾子は、メソッド、タスク、ラムダ式内で await キーワードを使用できるようにするために使用されます。async メソッドに await 演算子が含まれていない場合、通常のメソッドと同様に同期的に実行されます。

このコードはコンパイルおよび実行できますが、多くの場合、実装が不完全であるか、async メソッドの動作を誤解していることを示しています。このメソッドは同期的に実行されるため、async 修飾子は不要であり、削除するか、await を使用して非同期操作を実行するようにメソッドを更新する必要があります。

public class C { public async void Foo() { var x = async () => { }; } }
public class C { public void Foo() { var x = () => { }; } }

このインスペクションの簡易修正では、メソッドまたはラムダ式から async 修飾子を削除します。

2026 年 3 月 11 日

関連ページ:

コードインスペクション設定を構成する

設計時コードインスペクションを構成する:デフォルトでは、ReSharper は、サポートされている言語に対応するすべてのファイルで設計時コードインスペクションを有効にします。必要に応じて、無効にすることができます。設計時コードインスペクションが有効かどうかに関係なく、コードインスペクションは常に特定のスコープで実行できます。メインメニューからを選択するか、Alt+R O を押してから、左側のを選択します。設計時コードインスペクションを切り替えるには、コード分析を有効にするチェックボックスを使用し...

コード検査: 'await' 演算子のない非同期メソッド ('await' 演算子なしの async void メソッドオーバーライド)

修飾子は、メソッド、タスク、ラムダ式内でキーワードを使用できるようにするために使用されます。メソッドに演算子が含まれていない場合、通常のメソッドと同様に同期的に実行されます。このコードはコンパイルおよび実行できますが、多くの場合、実装が不完全であるか、メソッドの動作を誤解していることを示しています。このメソッドは同期的に実行されるため、修飾子は不要であり、削除するか、を使用して非同期操作を実行するようにメソッドを更新する必要があります。public class C { public async