Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我可以从c#.net dll调用vb.net dll吗?_.net - Fatal编程技术网

我可以从c#.net dll调用vb.net dll吗?

我可以从c#.net dll调用vb.net dll吗?,.net,.net,简单的是/否问题:我可以从在自己的c#dll中编译的c#函数调用在vb.net dll中编译的vb.net函数吗?在同一个应用程序中运行。是的,这应该不是问题。当然是。您可以访问dll,并可以在dll中创建类的对象和调用方法。是的,您可以。另一种方法不一定正确,因为您可以在C#中执行不符合CLS的操作,因此您需要使用标记C#程序集 [assembly:CLSCompliant(true)] NET的全部要点是互操作性。因此,所有.NET语言程序集都应该能够来回调用其他.NET程序集,但有一些非

简单的是/否问题:我可以从在自己的c#dll中编译的c#函数调用在vb.net dll中编译的vb.net函数吗?在同一个应用程序中运行。

是的,这应该不是问题。

当然是。您可以访问dll,并可以在dll中创建类的对象和调用方法。

是的,您可以。另一种方法不一定正确,因为您可以在C#中执行不符合CLS的操作,因此您需要使用标记C#程序集

[assembly:CLSCompliant(true)]

NET的全部要点是互操作性。因此,所有.NET语言程序集都应该能够来回调用其他.NET程序集,但有一些非常具体的警告,正如Pete所指出的。

是的,原因是.NET是语言互操作性。

它取决于类的访问修饰符及其方法/函数。下面是访问修饰符(C#/VB.Net)和外部可用性的列表

公共/公共-是
protected/protected-必须继承,并且可以使用子类
内部/私人-否
受保护的内部/朋友-否

private/Protected Friend-No

只是简单地解释一下:C#、VB.NET和所有其他都编译成IL代码,语法类似于Assembler。因此,无论应用程序/库是用什么语言编写的,它最终都将成为IL代码。