Распоряжаться или нет Распоряжаться .. писатель создан из XmlDocument через навигатор? - PullRequest
0 голосов
/ 21 апреля 2011

Мне действительно нужно избавиться от писателя ниже?

DataContractSerializer _serialier...
var actual = new XmlDocument();
using (var writer = actual.CreateNavigator().AppendChild())
    _serialier.WriteObject(writer, myObj);

Если нет, то код упрощается до:

DataContractSerializer _serialier...
var actual = new XmlDocument();
_serialier.WriteObject(actual.CreateNavigator().AppendChild(), myObj);

1 Ответ

1 голос
/ 21 апреля 2011

Если объект реализует IDisposable, тогда вы должны вызвать Dispose для него, когда закончите.

Если вы этого не сделаете, тогда ваш код зависит от предположения, что вам не нужносделать это.Что происходит, когда ваш код впоследствии подвергается рефакторингу, так что используемый XmlWriter является кодом, который удерживает некоторый ресурс?

...