1

我正在尝试NetOffice使用模板执行 MS Word 邮件合并,并以编程方式填写合并字段。此处提供的示例实际上并没有这种情况。我更新了其中的示例 03,以便它从现有的带有合并字段的 MS Word 文档创建一个新文档。然后我将其更改为使用以下代码访问合并字段:

var fields = newDocument.MailMerge.Fields;
foreach (Word.MailMergeField field in fields)
{
   ...
}

for循环在第一次尝试枚举字段时遇到此异常:工厂未使用 NetOffice 程序集进行初始化。如果我尝试在调试时运行,fields.Count则返回文档中合并字段的正确计数。我似乎无法访问这些字段来填充/更新它们。

有没有人遇到过这个?

更新

在 上运行调试Core.cs,它无法从 加载程序集WordApi.dll,因此无法从该程序集中获取 FactoryInfo,我认为它需要在_factoryList. 我还没有完全弄清楚为什么即使 dll 在它正在搜索的文件夹中,它也无法加载程序集。

4

1 回答 1

2

我遇到的问题似乎是 NetOffice 上的一个错误。错误在CurrentAppDomain课堂上' LoadFrom()。鉴于它正在接受程序集的完整文件路径(而不是程序集的完全限定名称),它应该执行Assembly.LoadFrom(path)ifLoadAssembliesUnsafe为 false。

我已经在 github 上报告了这个错误/问题。链接在这里。

于 2016-08-22T05:50:41.093 回答