【问题标题】:VSTO - Can't get reference to Word.ApplicationFactory from external assemblyVSTO - 无法从外部程序集中获取对 Word.ApplicationFactory 的引用
【发布时间】:2014-03-15 20:35:19
【问题描述】:

问题

我们有一个 VSTO Word 插件,我们正在尝试使用它进行集成测试。

我们组织了以下 3 个项目:

  • VSTO 项目
  • 业务逻辑项目
  • 测试项目

问题在于,在测试集成项目中,我们可以使用创建 word 的实例 new Microsoft.Office.Interop.Word.Application() 但是我们无法获取 Microsoft.Office.Tools.Word.ApplicationFactory 的实例(VSTO 接口)。

有谁知道我如何在测试程序集中获得 VSTO ApplicationFactory 的实例?

供参考

VSTO 项目调用业务逻辑项目传递

  • Microsoft.Office.Interop.Word.Application
  • Microsoft.Office.Tools.Word.ApplicationFactory

在业务逻辑项目中我们可以得到激活的Microsoft.Office.Interop.Word.Document,调用工厂传入的互操作文档方法GetVstoObject方法

public Microsoft.Office.Tools.Word.Document VstoDocument
{
    get { return _document.GetVstoObject(_factory); }
}

【问题讨论】:

    标签: vsto integration-testing


    【解决方案1】:

    可能为了测试目的而模拟接口(使用 moq 或其他框架)。我知道在访问Excel interfaces needed to set up an RTD server 时,您必须创建自己的接口版本,并使用正确的 Microsoft GUID 标记它们。也许同样的方法也适用于应用程序工厂接口?我看到微软已经发布了 GUID here

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多