相关疑难解决方法(0)

转让所有权后如何摆脱CA2000警告?

以下代码生成两个CA2000警告(除此之外,但这不是重点).

public sealed class Item: IDisposable
{
    public void Dispose() {}
}

public sealed class ItemContainer
{
    public void Add(Item item)
    {
    }
}

public sealed class Test: IDisposable
{
    private ICollection<Item> itemCollection;
    private ItemContainer itemContainer;

    private void Add(Item item)
    {
        itemCollection.Add(item);
    }

    public void Initialize()
    {
        var item1 = new Item(); // no warning
        itemCollection.Add(item1);

        var item2 = new Item(); // CA2000: call Dispose on object item2
        Add(item2);

        var item3 = new Item(); // CA2000: call Dispose on object …
Run Code Online (Sandbox Code Playgroud)

c# code-analysis visual-studio-2010

15
推荐指数
3
解决办法
1万
查看次数

标签 统计

c# ×1

code-analysis ×1

visual-studio-2010 ×1