快速问题,我一直在阅读一些.NET内容以及某些人谈论的方式暗示我可以将.NET库与多种.NET语言一起使用。也许这只是一厢情愿的想法。例如,我可以使用BOO .NET语言使用以C#编程的TAO框架?
我唯一可以解释的方法是,是否将库编译到intecode以在.NET中运行,并且可以与任何也编译的语言一起使用。我对.net不太了解 ^ - ^

谢谢

有帮助吗?

解决方案

任何一个毫无用处的(IL代码和清单)都可以在任何.NET语言中使用 - 只要代码符合CIL并符合符合的语言,它都不重要 CLS (通用语言规范)。

MSDN (CLS):

要与其他对象完全互动,无论其实现的语言如何,对象必须仅向呼叫者暴露于他们必须与所有语言共有的功能。因此,已经定义了许多应用程序所需的一组基本语言功能的通用语言规范(CLS)。 CLS规则定义了公共类型系统的子集;也就是说,适用于公共类型系统的所有规则适用于CLS,除非CLS中定义了更严格的规则。 CLS通过定义开发人员可以依靠的一组功能来帮助增强和确保语言互操作性,以多种语言可用。 CLS还建立了CLS合规性的要求;这些帮助您确定您的托管代码是否符合CLS以及给定工具在多大程度上支持使用CLS功能的托管代码的开发。

其他提示

如果我正确理解您的问题,那么您可以在C#或Delphi Prism中创建.NET库,然后将其编译为IL并获得一个组装。然后,您可以在VB.NET项目中引用并使用此组件。

互操作性有限制。特别是,如果不同语言的类型系统明显不同。但是Boo和C#与语法相似,因此之间应该没有问题。

我们在没有问题的VB.NET项目中使用C#助手库 - 单个项目只能处理单个语言,但解决方案可以使用自己的语言包含多个项目(或用自己的语言(或引用任何用任何以任何语言编写为MSIL)的程序)完整与调试功能

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top