对于COM互操作,是否可以将通用返回类型标记为非泛型?
假设我有以下课程:
[ComVisible(true)]
public class Foo
{
public IEnumerable<string> GetStr() // Generic return type
{
yield break;
}
}
我知道IEnumerable&lt; string&gt;实现IEnumerable。
我可以强制tlbexp.exe(通过return:属性或通过其他方式)公开GetStr()方法 作为返回IEnumerable的方法?
答案 0 :(得分:0)
我认为不可能,不。当您使用COM interop marshaling达到限制时,通常最好使用COM友好界面创建单独的包装器类型,并使原始类型尽可能保持.NET友好。