ReSharper 2026.1 Help

コードインスペクション: コレクションの内容が照会されることはありません(private アクセス)

ReSharper は、コード内で作成されたコレクションへの アクセスを分析し、読み取りアクセスがあってもコレクションが一度も追加されたり変更されたりしない場合に警告します。 たとえば、次のようになります。

public void Bar() { var col = new List<string>(); Console.WriteLine(col[0]); }

すべての標準コレクション型はデフォルトでこの方法で分析されます。 必要に応じて、この分析を IEnumerable から派生したカスタムコレクションにも適用できます。 この場合、コレクションの public メソッド呼び出しがコレクションの内容にどのように影響するかをReSharperに伝える必要があります。 そのためには、コレクション クラスのメソッドに [CollectionAccessAttribute] を付与し、次のいずれかのフラグを指定します: NoneReadModifyExisitingContentUpdatedContent (最後の 2 つのフラグの違いは、 UpdatedContent が付けられている場合は、その関数でコレクションに新しい要素を追加できることを意味します)。 これを示す簡単な例を以下に挙げます:

JetBrains.Annotations を使用してコレクションアクセスのコード分析を改善する
2026 年 6 月 12 日