Документ OpenXML - это больше, чем просто файл XML (фактически это ZIP-архив, содержащий несколько файлов, среди которых есть файлы XML).
Что вам нужно сделать, это изменить ваш WordprocessingDocument
и затем сохранить его (что делается автоматически в конце блока using
), а не сохранять XML-файл, представляющий часть документа:
using (var wordDoc = WordprocessingDocument.Open(fileName, true))
{
MainDocumentPart mainPart = wordDoc.MainDocumentPart;
using (Stream partStream = mainPart.GetStream())
{
var xmlDoc = new XmlDocument();
using (XmlReader partXmlReader = XmlReader.Create(partStream))
xmlDoc.Load(partXmlReader);
//xml node manipulation here
partStream.Position = 0;
using (XmlWriter partXmlWriter = XmlWriter.Create(partStream))
xmlDoc.Save(partXmlWriter);
}
}