. NET core 3.0 и MS Office Interop не работают вместе в некоторых сценариях - PullRequest
0 голосов
/ 24 апреля 2020

Я использую WPF .NET Core 3.1 приложение для автоматизации Microsoft WORD. Как мы знаем, Office COM ссылки не работают с NET Core 3.1. Но есть обходной путь, как объяснено здесь или как объяснено в разделе Note здесь, в официальном . NET Образец Core Excel или другой объясненный обходной путь здесь .

Вышеупомянутые обходные пути работают почти во всех случаях в моем приложении WPF Core 3.1 для автоматизации WORD, за исключением некоторых случаев, таких как показано ниже, где я получаю следующую ошибку в последней строке код:

код :

....
using WORD = Microsoft.Office.Interop.Word;
oApp = new WORD.Application();
oApp.Visible = true;
WORD.Document oDoc = oApp.Documents.Open(@"C:\tmp\Test.docx");

string st = oDoc.Paragraphs[1].Range.Text; //this line correctly shows the content of Paragraph[1]
st = oDoc.Paragraphs[1].get_Style().NameLocal; //this line throws the error shown below

Ошибка :

System._ComObject не содержит определение для NameLocal

Примечание : вышеупомянутая ошибка не возникает в моем аналогичном проекте в приложении WPF .NET FullNetwork. И там он правильно отображает значение oDoc.Paragraphs[1].get_Style().NameLocal как Normal, если абзац является обычным абзацем, или отображает, скажем, Heading 1, если абзац является заголовком 1 и c.

Вопрос : Что может быть причиной ошибки в приведенном выше приложении WPF .NET Core 3.1 и как мы можем ее исправить?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...