C#Casting system .__ comobject to class type

时间:2013-08-02 15:33:12

标签: c# excel com interop

我有一个Excel加载项,我正在尝试为其设置单元测试框架。 对于单元测试,我遵循了本指南: http://blogs.msdn.com/b/varsha/archive/2010/08/17/writing-automated-test-cases-for-vsto-application.aspx

它似乎工作正常,直到我想从我的界面返回一个类对象。 将类对象指定为返回类型会在调用方法时抛出“返回参数具有无效类型”异常。 将返回类型从类更改为对象允许我调用方法并获取对象,但现在我无法将其作为类转换并按预期使用它,当我尝试时收到此异常消息:

> Unable to cast COM object of type 'System.__ComObject' to class type
> 'XYCoordinates'. Instances of types that represent COM
> components cannot be cast to types that do not represent COM
> components; however they can be cast to interfaces as long as the
> underlying COM component supports QueryInterface calls for the IID of
> the interface.

我使用VisualBasic.Information.TypeName检索了Type名称,并将其显示为我期望的类。

有没有办法让comobject回到课堂?或者另一种访问它拥有的属性的方法? 或者我在这里有点愚蠢?

0 个答案:

没有答案