我正在寻找一个工具(付费或OSS)来将中型VB.NET项目转换为C#项目。我搜索过StackOverflow并找到了一些问题/答案,但大多数建议使用.NET Reflector或在线复制/粘贴单个文件工具。反射器似乎不符合要求,因为它将转换组件,但我们正在寻找一个整体销售项目转换器,它将维护项目,包括文件名,注释等。
我们完全愿意手动处理无法自动转换的项目,但我们希望从一个相当全面的转换项目开始。
我们发现的一个建议是Elegance Technologies的CSharpener for VB.NET - http://www.elegancetech.com/csvb/csvb.aspx。根据他们的网站,自VS 2008之前,它还没有加速。
建议将不胜感激。
答案 0 :(得分:4)
SharpDevelop是一个开源IDE,它允许你在VB和C#之间进行转换。
答案 1 :(得分:4)
请注意,在VB.net中有一些可以很好地完成的事情,如果在C#中完全不能很好地完成(反之亦然)。两个注意事项:
我认为IL-to-C#转换器可以将初始化移动到对象的构造函数中,但这会导致一些烦人的重复。我不认为C#代码有任何方法可以匹配VB.net异常处理的语义。
答案 2 :(得分:3)
两个字:程序员。 如果你想让它成为最无bug的,那就是雇佣程序员。 快速谷歌出现http://www.freelancer.com,你可以聘请一次性程序员。
答案 3 :(得分:2)
如果您对SharpDevelop不满意,TangibleSolutions将为他们的转换器提供支持,以确保您的幸福。
答案 4 :(得分:1)
SharpDevelop非常好,但在我的公司,我们发现VBConversions提供了更加完整的转换。这是一个商业应用程序,但是在SharpDevelop上保存的时间对我们来说是明智的。
作为一个具体的例子,我们发现SharpDevelop没有正确转换的一件事是VB索引,它使用曲线括号。它似乎无法区分索引和方法调用,因此没有将索引转换为方括号。 VBConversions转换它们很好。这一件事让我们值得购买。