结合C#.NET和VB.NET的缺点

Dev*_*ter 3 .net c# vb.net

我是VB.NET的开发人员,最近转向C#.我发现一些内置的VB.NET函数(早于.NET回溯到6.0和BASIC本身),如String.Left或者Right,或者高级函数,比如保存到注册表(SaveSettingsGetSettings)都明显缺席.

我所做的是在VB.NET作为其语言的同一解决方案中创建一个新项目,并基本上重新创建我需要的所有VB.NET中可用的功能.然后我只是将其称为我正在编写的C#代码.

由于在.NET中编译代码几乎归结为相同的CIL,因此在性能方面我编写代码的语言或者是否将C#与VB混合在一起并不重要.

我错了还是对的?

谢谢

Hai*_*lei 12

有一个命名空间Microsoft.VisualBasic,你也可以在C#项目中使用它:

string test = Microsoft.VisualBasic.Strings.Left("abc", 2);
Run Code Online (Sandbox Code Playgroud)

不要忘记添加Microsoft.VisualBasic到项目的参考中.

  • 在C#中使用`Microsoft.VisualBasic`命名空间的IMO与在整个项目中混合使用VB.NET和C#具有相同或更好的可读性和可维护性.C#开发人员能够很容易地理解这些方法通过MSDN做什么,但不太可能快速读取VB.NET模块.此外,这个程序集是整个.NET Framework的一部分,而不是VB.NET的一部分.请参阅:http://stackoverflow.com/questions/226517/is-the-microsoft-visualbasic-namespace-true-net-code. (2认同)