【问题标题】:Convert VB.NET 2005 project to C# 2008 Project将 VB.NET 2005 项目转换为 C# 2008 项目
【发布时间】:2009-06-16 16:53:32
【问题描述】:

是否有将 VB.NET 2005 项目转换为 C# 2008 项目的工具。我正在尝试将我们的项目转换为 VS 2008,并且主要将某些项目中的所有 vb.NET 代码移植到 C# 3.0/3.5。

【问题讨论】:

    标签: c# .net vb.net visual-studio visual-studio-2008


    【解决方案1】:

    我对 VB.net 项目做出了类似的决定。 解决方案是妥协,我决定使用双重 VB 和 C#。

    将 VB.NET 2005 升级到 2008 很简单。

    将 CSharp 和 VB 文件夹添加到 App_Code 和

    <codeSubDirectories>
    <add directoryName="CSharp" />
    <add directoryName="VB" />
    </codeSubDirectories>
    

    到 web.config 的编译部分

    正如 Kev 所说,这并不像您想象的那么简单,您可能会遇到意想不到的问题,这使得使用双语言支持成为最佳解决方案

    我知道这并不能直接回答问题,但这是一种替代方法

    【讨论】:

      【解决方案2】:

      您可以查看SharpDevelop。它是一个开源的 .NET 开发环境。 SharpDevelop 内置了一些代码转换功能。

      【讨论】:

        【解决方案3】:

        看看这个。

        http://www.developerfusion.com/tools/convert/vb-to-csharp/

        尝试谷歌术语“convert vb.net project to c# project”,你会在那里找到几个选项。

        【讨论】:

          【解决方案4】:

          CodeProject 上有一个名为GBVB (Goodbye VB) 的工具,它声称可以“完美地”将 VB.NET 代码转换为 C# 代码。但是作者确实添加了一些警告,例如不明确的代码、可选参数等问题。

          另一种方法是使用 Denis Bauer's Reflector.FileDisassembler .NET Reflector add-in 并将已编译的程序集反汇编回 C#。

          处理 .aspx/.asmx 页面及其代码隐藏文件可能是一种特殊情况,因为您需要手动更改 &lt;%@ Page Codebehind="Default.aspx.cs" %&gt; 指令以指向正确的源文件。

          VB.NET 到 C# 的自动转换并不像最初看起来那样简单。我以前来过这里并放弃了一个相当大的项目,有很多关于特定边缘情况的摆弄,其中翻译要么无法编译,要么在运行时产生意外行为。我选择采用双语言解决方案,所有新代码都用 C# 编写,而旧的 VB.NET 代码随着时间的推移逐渐移植。

          【讨论】:

            【解决方案5】:

            你好这个代码答案不是

            public student ()
                    {}
                    private string code;
                        private string name;
                    public string code()
                    { 
                    set (code=Value);
                        Get return code;
            
                    }
            

            【讨论】:

              【解决方案6】:

              Telerik 有一个 converter,您可能想看看。

              【讨论】:

              • 我希望转换整个项目。而不是一些文件。
              【解决方案7】:

              由于其他人提到了在线转换工具,我发现 www.carlosag.net 最适合我的代码。也许 b/c 我使用其他 3rd 方 API,但似乎很多其他在线转换器在遇到无法转换的行时就会出错。

              【讨论】:

                【解决方案8】:

                SharpDevelop 非常好,但在我的公司,我们发现 VBConversions 可以提供更完整的转换。虽然它是一个商业应用程序,但对于通过 SharpDevelop 节省的时间来说,这对我们来说是轻而易举的事。

                作为一个具体的例子,我们发现 SharpDevelop 没有正确转换的一件事是 VB 索引,它使用了弯括号。它似乎无法区分索引和方法调用,因此没有将索引转换为方括号。 VBConversions 很好地转换了它们。这件事让我们值得购买。

                看起来Tangible Software 的产品与 VBConversions 非常相似,但我对此没有任何经验。 Jon Skeet suggested 不过还是不错的吧。

                【讨论】:

                  猜你喜欢
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  • 2011-06-02
                  • 1970-01-01
                  • 1970-01-01
                  • 2010-09-14
                  • 1970-01-01
                  • 1970-01-01
                  相关资源
                  最近更新 更多