次のようなコードがたくさんあります。
FileStream fs = File.Open(@"C:\Temp\SNB-RSS.xml", FileMode.Open);
using (XmlTextReader reader = new XmlTextReader(fs))
{
/* Some other code */
}
これにより、次のコード分析警告が表示されます。
CA2000 : Microsoft.Reliability : In method 'SF_Tester.Run()', object 'fs' is not disposed along all exception paths. Call System.IDisposable.Dispose on object 'fs' before all references to it are out of scope.
提案に従って File.Open を using ステートメントに入れると、次のようになります。
CA2202 : Microsoft.Usage : Object 'fs' can be disposed more than once in method 'SF_Tester.Run()'. To avoid generating a System.ObjectDisposedException you should not call Dispose more than one time on an object.: Lines: 39
私はVS2010を使用していますが、何か間違ったことをしていると思わずにはいられませんが、それはわかりません。私は何を間違っていますか?