Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 删除收集对象的CA2000警告_C#_Asp.net - Fatal编程技术网

C# 删除收集对象的CA2000警告

C# 删除收集对象的CA2000警告,c#,asp.net,C#,Asp.net,在我的代码中,我有不同的收集对象 在VS2000中运行代码分析后,我收到CA2000警告 我试图通过使用临时对象来使用microsoft方式。 我也不能用 public static MetadataEntity GetStepMetadata(StepEntity stepEntity, string code) { StepMetadataCollection values = null; StepMetadataCollection tempval

在我的代码中,我有不同的收集对象

在VS2000中运行代码分析后,我收到CA2000警告

我试图通过使用临时对象来使用microsoft方式。 我也不能用

public static MetadataEntity GetStepMetadata(StepEntity stepEntity, string code)
    {

        StepMetadataCollection values = null;
        StepMetadataCollection tempvalues = null;
        try
        {
            values = new StepMetadataCollection();
            IPredicateExpression selectFilter = new PredicateExpression(StepMetadataFields.WfStepId == stepEntity.Id & StepMetadataFields.Code == code);

            values.GetMulti(selectFilter);
            tempvalues = values;
            values = null;

        }
        finally
        {
            if (values != null) {
                values.Dispose();
            }   

        }

        return  tempvalues;
    }

我尝试了这个,但它仍然给我相同的警告CA2000,看起来您遵循了这个模式(除了您交换了temp和非temp变量名)。您确定它在抱怨
StepMetadataCollection
?是否
PredicateExpression
可能
IDisposable
?它用于StepMetadataCollection CA2000警告:在对象“值”的所有引用超出范围之前调用System.IDisposable.Dispose。