Word 2010 GUI を使用すると、「ファイルからテキストを挿入...」というオプションがあり、まさにそれを行います。ドキュメントの主要部分のテキストをドキュメントの現在の場所に挿入します。
C# と OpenXml SDK 2.0 を使用して同じことをしたいと思います
using (var mainDocument = WordprocessingDocument.Open("MainFile.docx", true);
{
var mainPart = mainDocument.MainDocumentPart;
var bookmarkStart = mainPart
.Document
.Body
.Descendants<BookmarkStart>()
.SingleOrDefault(b => b.Name == "ExtraContentBookmark");
var extraContent = GetTextFromFile("ExtraFile.docx");
bookmarkStart.InsertAfterSelf(extraContent);
}
プレーン Xml (XElement)、OpenXmlElement (MainDocumentPart.Document.Body.Descendants)、および AltChunk を使用してみました。これまでのすべての代替案では、非準拠の docx ファイルが生成されました。
メソッドはGetTextFromFile
どのように見えるべきですか?