Как заменить строку на Document.Body с помощью OpenXML в C#
У меня есть два документа Word. Первый документ содержит заголовок и текст в теле. Также в теле есть строка «Modul». Во втором документе Word у меня есть форматированный текст.
Мне нужно заменить «Modul» из первого документа на весь текст (телом) второго документа.
У меня есть функция, которая находит строку и заменяет ее строкой, и она работает но не работает замены целого текста (MainDocumentPart.Document.Body) второго документа:
using (WordprocessingDocument docSource = WordprocessingDocument.Open(sourceFile, true))
{
var body = docSource.MainDocumentPart.Document.Body;
using (WordprocessingDocument docDest = WordprocessingDocument.Open(destFile, true))
{
foreach (var para in docDest.MainDocumentPart.Document.Body.Elements<Paragraph>())
{
foreach (var run in para.Elements<Run>())
{
foreach (var text in run.Elements<Text>())
{
if (text.Text.Contains(searchText))
{
text.Text = text.Text.Replace(searchText, replaceText);
}
}
}
}
}
}
Как найти строку и заменить на docSource.MainDocumentPart.Document.Body? Спасибо.