Drawbacks of combining C#.NET and VB.NET

.net, c#, vb.net

Solution

There is a namespace named `Microsoft.VisualBasic`, you can use it in C# projects also:

string test = Microsoft.VisualBasic.Strings.Left("abc", 2);

Don't forget to add `Microsoft.VisualBasic` into References of your project.

Problem

I'm a long time VB.NET developer and has recently switched to C#. I found out that some of the built-in VB.NET functions (which predates .NET back to 6.0 and BASIC itself) such as the `String.Left`, or `Right`, or advanced functions like saving to the registry (`SaveSettings` and `GetSettings`) are noticeably absent. What I did was create a new project in the same solution with VB.NET as its language and recreate basically all the functions I need that are available in VB.NET. And then I just call that to the C# code I'm writing. Since compiling the code in .NET pretty much boils down to the same CIL, it shouldn't matter performance-wise what language I wrote the code in or whether I mix C# with VB. Am I wrong or right? Thanks

Original source

Related problems