XmlDocumentをファイルにシリアル化しようとしています。XmlDocumentはかなり大きいです。ただし、デバッガーでは、InnerXmlプロパティにすべてのXMLBLOBが含まれていることがわかります。そこでは切り捨てられません。
XmlDocumentオブジェクトをファイルに書き込むコードは次のとおりです。
// Write that string to a file.
var fileStream = new FileStream("AdditionalData.xml", FileMode.OpenOrCreate, FileAccess.Write);
xmlDocument.WriteTo(new XmlTextWriter(fileStream, Encoding.UTF8) {Formatting = Formatting.Indented});
fileStream.Close();
ここで作成されたファイルは、5,760のような行にのみ書き出されます。実際には、タグの途中で切り捨てられます。
なぜこれがここで切り捨てられるのか、誰かが何か考えを持っていますか?
更新:問題の原因を見つけました。ファイルストリームを閉じる前に、XMLテキストライターを閉じていませんでした。D'oh!