有关如何编组VB6和Net之间的集合的资源?

时间:2011-09-16 17:53:32

标签: .net collections vb6 com-interop

我在Net中编写了一个类dll,我们在迁移应用程序时必须向VB6公开。这个要求是临时的,所以我想在方法调用中使用的类型中尽可能少做出让步,并在Net dll中返回值。该DLL大量使用IEnumerable <T&gt ;, List <T&gt ;, Dictionary <TKey,TValue&gt;和SortedDictionary <TKey,TValue&gt;作为参数和返回值。我在哪里可以找到如何在Com和Net之间编组这些集合?

1 个答案:

答案 0 :(得分:1)

VB6可以枚举任何实现IEnumerable的对象 IEnumerable<T>接口不会导出到COM,因为它不支持泛型,但您可以返回完全相同的枚举器对象。

在VB6方面,只需使用通常的For Each X In Y循环。