如何在.NET中操作VB6集合?

3
我目前正在设计一个用于.NET软件的接口,该接口将被COM对象(特别是VB6)使用。
虽然我在Microsoft的许多页面上找到了关于如何制作COM可互操作接口的详细信息,但我目前卡在了设计时使用集合方面:我想在.NET程序中使用标准的VB6“Collection对象” - 这样,我将能够在接口中指定这样的集合作为参数或返回类型,简化客户端使用接口所需的工作。
提前感谢您的帮助。
编辑:我不打算在“真正的工作” .NET程序中使用VB6集合 - 我会尽快转换VB6集合,并使用适当的.NET集合调用其他方法。
1个回答

2

谢谢您的回复。但是,正如我在帖子中所说,我想在.NET的定义上下文中实现这一点,该接口将被VB6程序使用。我使用VB6集合的原因是为了让客户尽可能轻松地使用接口,通过在接口中指定VB6集合作为返回类型或参数。 - Jean Hominal
2
我理解。然而,重点是你不应该需要这样做。.NET内置的COM-Interop层将自动为您将.NET特定类型转换为等效的COM类型,并在两个运行时之间进行数据封送。在您的情况下,您可以例如在您的.NET接口中公开数组以获得最佳互操作性。 - Enrico Campidoglio
2
没错。.NET集合类可以在VB6代码中使用For Each语法进行迭代。 - Hans Passant

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接