目录
背景
在codeproject.com中,有一些精彩的VB项目演示帖子,我得到了很多启发。我想将它们转换为C#项目。
那么应该使用哪个工具呢?网上有很多,但我从SharpDevelop Team中找到了这个代码转换器。它可以将整个VB项目转换为C#项目。所以我试了一下,在这里分享一些经验教训和想法。
安装
转到此站点以获取vsix文件并将其保存到本地计算机。
双击这个下载的文件,它会自动安装在你的机器上。
转换一个简单的项目
我想使用参考文献[3]作为测试。下载它并将其解压缩到您的本地文件夹中。
将其加载到您的Visual Studio 2019中。在解决方案资源管理器中,选择此项目名称,您将看到此上下文菜单:
右键单击此项目名称,您将看到此上下文菜单:
选择转换为C#项,您将成功将此项目转换为C#:
转到同一个项目文件夹,找到csproj文件并打开这个项目。编译它,你会看到它在构建过程中没有错误。您可以毫无问题地运行它。
再转换一个项目[6],并附上源代码。
Magic Graphics[7]是VB项目的另一个转换。附上源代码。这个项目在使用这个转换器后需要一些手动修复:主要是类型转换和一个ref & out变量同时重构。
转换复杂项目
我在参考文献[6]中测试了该项目,它在构建过程中遇到了许多错误。
该解决方案有两个项目。因此,您需要一次转换一个项目。
我必须一一修复这些错误。另外,我需要查看相应的.vb文件以了解原始逻辑。
得到教训
首先是打开Option Strict和Option Explicit。这会产生大部分类型转换错误,我需要一一修复。
兴趣点
事实证明,这个工具在转换VB表单设计器代码方面存在挑战。我认为需要手动转换才能成功转换。
参考文献[2]中的转换器的在线版本对转换一个类非常有帮助。
参考
- Code Converter (VB - C#)
- ICSharpCode Converter
- Rubberband Lines
- A PictureBox with Zoom, Grid and Rulers
- Prepare Visual Basic for Conversion to C#
- Resize and Rotate Shapes in GDI+
- Magic Graphics
https://www.codeproject.com/Tips/5333669/A-Free-Useful-Converter-from-VB-project-to-Csharp