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

VB.NET应用程序中的C#代码?,c#,.net,vb.net,visual-studio,C#,.net,Vb.net,Visual Studio,我现在有一个应用程序是使用VB.NET构建的 我需要在我现有的VB.NET应用程序中添加一些C#代码,是否可能或不?为C#代码创建一个单独的项目。然后将对C#项目的引用放入VB.Net项目中。然后,您可以访问C#对象,就像它们是用VB.Net编写的一样是的,只要它是一个单独的类/页面/网络控制/用户控制,并且指定为C#。Visual Studio不会喜欢它,在VS中最简单的方法是在解决方案中设置一个新项目。否。您需要在解决方案中创建一个单独的项目,并将代码放在其中。如果项目是类库,那么您的原始项

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


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

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

是的,只要它是一个单独的类/页面/网络控制/用户控制,并且指定为C#。Visual Studio不会喜欢它,在VS中最简单的方法是在解决方案中设置一个新项目。

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

正如其他人所说,你不能直接混合使用这两种语言,因为编译器只能理解它编写的语言。因此,VB.NET编译器无法理解C#代码,除非MS创建扩展来理解C#代码。类似的东西来自我的想象:)-

Dim v作为int
%对于(int i=0;i<$v;++i){}%
如果只是一个小小的C#代码,您可以先使用类似的转换器将其转换为VB.NET,也可以手动转换

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

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

遵循以下方法:
(一)

2) 在项目中添加CSharp项目的引用

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

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

参考:

类似于下面的代码片段<代码>静态类程序{[DllImport(“kernel32.dll”)]静态外部bool alloconsole();静态void Main(){if(true){//执行一些操作,例如启动服务。}否则{alloconsole();}}DllImport将公开非托管代码中的方法。使用它,您可以从vb.net/c#代码中使用c/c++函数。请参考这个SO问题:底线是不能在源文件中直接混合这两种语言。你必须分离(放入DLL)和导入(通过引用导入DLL)意味着如果我有一个完全独立的C#类,那么我可以从VB类文件调用C#类文件的函数?????非常感谢您的回答……不,您需要一个单独的C#项目。我所见过的在同一个项目中混合语言的唯一方法是在ASP.NET项目的App_Code文件夹中。或者,如果您使用的是一个网站,并且只是一个“新网站…”,那么您可以添加任何一种语言的类、页面、用户控件等(这就是App_Code文件夹发挥作用的地方)。
Dim obj As New YourCSharpProject.SomeClass()
obj.UpdateData()