Extremely responsive, personalized customer support
Easy to use
Produces helpful notes, warnings, and 'to do' comments
Excellent learning tool for those new to VB.NET
Q: Is the original C# project altered in any way?
Your existing code is left completely intact. The new VB.NET project
is written to the new location that you specify.
Q: Can the converter produce VB6 code?
No. Only VB.NET code is produced.
Q: Do you guarantee a 100% complete conversion?
No. Our accuracy is very high, but there will be
some minor tweaks required in all but the simplest projects. Read the rest
of the FAQ to get an idea of a few things that are not converted.
Q: Is C# code within ASP.NET files converted?
For now it is, but conversion of code within ASP.NET files is not supported after April 2019.
Q: What are the most common adjustments necessary after conversion?
VB does not allow assignments within expressions, but C# does (e.g.,
while ((x = y()) > 0) assigns a value to x as part of an
expression). Instant VB will convert some cases, but will mark other more
complex cases with a "ToDo" comment. You must manually
Most reference type comparisons are converted, but occasionally you
may need to manually change an equals sign to "Is". The
VB compiler makes these adjustment requirements obvious.
Unfortunately, many new C# features beginning with C# 7 have no equivalent in VB. This includes
'throw expressions', 'ref returns', 'ref locals', local functions, 'pattern variables', and 'switch' enhancements such as pattern expressions.
Instant VB detects these, comments out some code, and provides 'todo' notes.
"unsafe" code blocks and types are not converted.
Files with cshtml extensions (using 'Razor' syntax) are not converted.
VB does not allow overloading when it is based only
on the direction of the parameters (ByVal vs ByRef). Methods overloading done this
way will require renaming of the method name in VB.
Universal Windows Platform (UWP) apps
(formerly 'UAP', 'Metro', 'WinRT', or 'Windows Store') are
converted, but the converter cannot discover type information which
is inside .winmd files. There are a couple of possible work-arounds,
but they will not work consistently for all users. This means that
there will be more manual adjustments required for Universal app