VB中的编译代码与C#相同?

时间:2012-03-15 21:44:31

标签: c# asp.net vb.net

假设我有一个完整的项目构建在C#和其他项目构建VB中,我引用了这个VB项目因为这两个项目需要在彼此之间进行交互。这可能吗?这两个项目的编译代码可以一起生活吗?另外,如果我制作相同的项目VB和C#编译版本是相同的??

4 个答案:

答案 0 :(得分:2)

它们都编译成中间语言(IL),你可以使用带有C#的VB.NET库,反之亦然。

如果你想检查两种语言的编译版本,我建议你下载ILSpy - 你可以用它打开任何.NET程序集。在一个中可能只有一些可能但在另一个中没有的东西,并且IL具有以下两者中未实现的功能:)

答案 1 :(得分:1)

.net / clr使用中间语言。 也称为IL

它类似于Java的ByteCode

用c#和vb编写的代码程序可能会在生成的IL-Code中有所不同,但是, 执行结果是一样的。

答案 2 :(得分:0)

是的,您可以混合使用不同语言编写的项目。

C#和VB编译器如何从源代码生成代码有一些细微差别,但大多数代码在编译后都是相同的。

其中一个细微差别就是VB中的局部变量初始化为零,而C#中的局部变量未初始化。

答案 3 :(得分:0)

  1. 创建空解决方案
  2. 右键单击解决方案资源管理器中的解决方案名称,添加现有项目,添加VB项目
  3. 右键单击解决方案资源管理器中的解决方案名称,添加现有项目,添加C#项目
  4. 解决方案资源管理器> VB项目>“我的项目”>参考>添加...按钮>项目>选择C#项目>确定
  5. 现在您可以访问其他项目中的公共方法。