私はいくつかのtry...catch
ブロック内の文字列のいくつかの必要な作業を行うためにいくつかのXmlReader
とXmlWriter
オブジェクトを使用しています。明示的にIDisposableに変換
ので、私もfinally
ブロックを追加し、NewReader.Close();
とNewWriter.Close();
を実行しています私は、表記using (XmlReader NewReader = XmlReader.Create(...))
を使用してれる好ましい構文であることを知っているが、私は本当に好きではありません。
しかし、コード解析は、これらのオブジェクトが処分されていないと訴えているので、何とかDispose()
メソッドを呼び出す必要があります。
これらのクラスでは、Dispose()
メソッドが明示的に実装されているため、((IDisposable)(NewReader)).Dispose();
と((IDisposable)(NewWriter)).Dispose();
を使用する必要があります。
この手法には何らかの欠点がありますか?
なぜusingステートメントを使用したくないのですか?それはあなたがする必要があるすべてを行いますが、fxcopの警告は表示されません。*また、try-finallyを使用するより簡潔です。 – s1mm0t