VB.NET应用程序中的C#代码

本文关键字:代码 NET 应用程序 VB | 更新日期: 2023-09-27 18:30:10

我有一个应用程序,它是使用VB.NET现在的构建的

我需要在我现有的VB.NET应用程序中添加一些C#代码,这是可能的还是不可能

VB.NET应用程序中的C#代码

为C#代码创建一个单独的项目。然后在VB.Net项目中放置对C#项目的引用。然后,您可以访问C#对象,就好像它们是在VB.Net 中编写的一样

您不能将不同的语言添加到同一个项目中,但您应该能够将两个项目添加到同一解决方案中,并添加引用从C#项目到VB项目或从VB项目到C#项目,并使用他创建的类型-当然,只要它们是公开的。

遵循以下方法:
1) 创建多项目解决方案

  • 如何:创建多项目解决方案

2) 在您的项目中添加您的CSharp项目的参考

  • 如何:将项目引用添加到Visual Studio Web项目

然后,您可以创建这些类/窗体等的对象,并访问您在CSharp项目中创建的方法,如下所示:

Dim obj As New YourCSharpProject.SomeClass()
obj.UpdateData()

参考:从C#表单启动VB表单

否。您需要在解决方案中创建一个单独的项目,并将代码放在其中。如果项目是类库,那么您的原始项目可以引用该类库并调用库例程。如果做不到这一点,就有大量的在线C#<->VB.NET转换器可用。

正如其他人所说,你不能直接混合这两种语言,因为编译器只能理解它所编写的语言。因此,除非MS创建了一个扩展,否则VB.NET编译器无法理解C#代码

Dim v as int
%for(int i = 0; i < $v; ++i){}% 

是的,只要它是一个单独的class/page/webcontrol/usercontrol,并且它被指定为C#。Visual Studio不会喜欢它,VS中的简单方法是在解决方案中设置一个新项目。

如果它只是一个小C#代码,您可以首先使用类似的转换器将其转换为VB.NEThttp://www.developerfusion.com/tools/convert/csharp-to-vb/,也可以手动转换。

否则,如前所述,您将不得不将C#代码放在同一解决方案中的另一个项目中。然后,您可以在同一解决方案中从VB.NET代码中调用C#代码。