1

我正在使用WPF .NET Core 3.1应用程序来自动化Microsoft WORD. 我们知道Office COM引用不适用于 .NET Core 3.1。但是有一种解决方法,如此处所述或此处官方 .NET Core Excel 示例中的部分所述或此处解释其他解决方法。Note

上述解决方法几乎适用于我的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 等。

问题:上述WPF .NET Core 3.1应用程序中的错误可能是什么原因,我们该如何解决?

4

0 回答 0