我正在尝试将大型(200K行)VB6项目转换为C#。我只想转换表单设计,因为我想重写C#中的所有实际代码。
我想使用免费的Artinsoft转换器,但这只允许10K行的项目。我想我可以将VB6项目分解为20个单独的项目,然后使用Artinsoft生成C#.NET表单,然后将转换后的表单重新放回到一个C#项目中。
这可行吗?
编辑:这会有用吗?有什么潜在的问题?答案 0 :(得分:1)
我会按照以下顺序尝试
1)至少为主要业务运营编写自动化测试用例
这将为您节省很多麻烦,以便稍后验证结果。
2)重构你的VB(尝试在单独的类/ DLL中移出你的业务逻辑)。
3)您可以使用步骤1中编写的自动化测试用例来验证您的重新分解。
4)现在你有小块,这也可以帮助你创建块然后你可以使用Artinsoft。
5)你的新C#应用程序将很好地分层。
6)在新应用程序和旧应用程序上运行在步骤1中创建的测试并比较结果并继续改进,除非它们匹配:)
答案 1 :(得分:1)
我建议不要在UI中使用转换器。它可能看起来微不足道,但有些功能在.NET中本身不存在(控件数组没有大包装器)。它创建的控件包装器使用和维护都不好玩。
VB6端口不好;用户界面和代码。如果你继续沿着这条路走下去,有些事情可以帮助你。
我会认真重新考虑转换。转换后的代码/用户界面听起来很棒,但是在我使用VB6转换的糟糕体验中,由于VB6允许开发人员有多糟糕以及根本不再存在的功能,因此存在很多问题。
为自己做一个大忙...开始一个新项目,创建一个继承自您使用的标准控件的自定义控件库,并在任何地方使用它们。不喜欢Cliptext在C#和VB6中使用蒙版文本框的方式吗?扩展或覆盖它。希望您的所有列表视图都可以排序吗?简单的单点实施。在一年内发现企业需要对90%的文本框进行拼写检查?容易。