Я добавляю некоторый пользовательский XML в docx для отслеживания его внутри приложения, которое я пишу .
Я сделал это вручную, открыв документ Word через ZIP-библиотеку и через официальный маршрут Open XML SDK. Оба имеют одинаковый результат, когда мой XML вставляется в папку customXml в документе. Документ отлично открывается в Word для обоих этих методов, и XML присутствует.
НО, когда я затем сохраняю документ как MyDoc2.docx, например, весь мой XML исчезает.
Что я делаю не так?
Ссылки Microsoft, по которым я следил:
http://msdn.microsoft.com/en-us/library/bb608597.aspx
http://msdn.microsoft.com/en-us/library/ bb608612.aspx
И код, который я взял из Open XML SDK 2.0:
public static void AddNewPart(string document, string fileName)
{
using (WordprocessingDocument wordDoc = WordprocessingDocument.Open(document, true))
{
MainDocumentPart mainPart = wordDoc.MainDocumentPart;
CustomXmlPart myXmlPart = mainPart.AddCustomXmlPart(CustomXmlPartType.CustomXml);
using (FileStream stream = new FileStream(fileName, FileMode.Open))
{
myXmlPart.FeedData(stream);
}
}
}
Спасибо, Джон