コードインスペクション:[MustDisposeResource] アノテーションが付与されたメソッドの戻り値が破棄されていません
呼び出しコードで JetBrains.Annotations の [MustDisposeResourceAttribute] を使用して リソースの破棄を強制している場合、JetBrains Rider は、コンストラクターや破棄可能なリソースを返すファクトリメソッドで初期化された変数が適切に処理されていないケースを報告します。
破棄可能なリソースの誤った処理を避けるために、JetBrains Rider は変数宣言を using 宣言または using ブロックに変換することを提案します:
[MustDisposeResource]
public class HasNativeResources : IDisposable
{
private IDisposable _resource;
public void Dispose()
{
_resource.Dispose();
}
}
public class Test
{
public Test()
{
var resource =
new HasNativeResources();
}
}
[MustDisposeResource]
public class HasNativeResources : IDisposable
{
private IDisposable _resource;
public void Dispose()
{
_resource.Dispose();
}
}
public class Test
{
public Test()
{
using var resource =
new HasNativeResources();
}
}
2026 年 6 月 12 日