Как заменить строку на 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? Спасибо.


Ответы (0 шт):