值 规则 ID CA2000 类别 可靠性 修复是中断修复还是非中断修复 非中断 原因 创建了 IDisposable 类型的本地对象,但该对象不会被释放,除非对对象的所有引用都超出范围。 如果代码将其中一个类型的对象传递给构造函数,则即使在对对象的所有引用超出范围之前未释放该对象,也不会发生规则 CA2000 冲突。 在这种情况下,CA2000 标记为违反规则。 此实现会引发 CA2000 警告。 在 OpenPort2 方法中,将声明两个 SerialPort 对象并将其设置为 null: tempPort,用于测试方法操作是否成功。 这可能会导致 CA2000 等规则出现意外冲突。
可靠性规则包括: 规则 描述 CA2000:丢失范围之前释放对象 由于可能发生异常事件,导致对象的终结器无法运行,因此,应显式释放对象,以避免对该对象的所有引用超出范围。
- .ctor 表示构造函数,.cctor 表示静态构造函数 无 CA1062 CA1303 CA2000 CA2100 CA2301 CA2302CA2311 CA2312 CA2321 CA2322
CA2000:丢失范围之前释放对象 由于可能发生异常事件,导致对象的终结器无法运行,因此,应显式释放对象,以避免对该对象的所有引用超出范围。
CA2000:丢失范围之前释放对象 由于可能发生异常事件,导致对象的终结器无法运行,因此,应显式释放对象,以避免对该对象的所有引用超出范围。