2010-07-21 67 views
4

是否有可用於將VB.Net代碼轉換爲C#的庫?有http://codeconverter.sharpdevelop.net/,但我不想從Web服務中使用它。將VB.NET代碼轉換爲C#

+1

筆記說,服務是基於這個項目的代碼http://www.icsharpcode.net/opensource/sd/ - 你可以下載和重新實現本地?或者聯繫sharpdevelop.net並詢問他們是否可以授權他們的轉換器用於本地使用? – Rup 2010-07-21 11:29:57

回答

5

有大量的在線服務:Telerik的provides one,這裏的one other和最好的一個是developer fusion。但這些都在線。

我對Instant C# of Tangible Solutions有很好的體驗,它們爲轉換後遇到的每個錯誤提供了很好的服務。除此之外,Turnsharp和許多其他可通過谷歌。

如果您使用Reflector,請注意以下幾點:它不會轉換您的源代碼,而是編譯後的代碼。這可能會在邏輯內部方法上產生巨大的差異,尤其是,您會丟失所有(xml)註釋以及可能的文件結構(例如,不能識別部分類)。當談到ASPX和內聯代碼時,Reflector實際上是不可用的。但它是一個很好的免費工具在所有其他方面

9

在.NET反射器中打開您的程序集。選擇C#語言。將源代碼複製/粘貼到Visual Studio。嘗試編譯。

+1

正是我在做什麼:) – leppie 2010-07-21 10:59:15

2

只需下載SharpDevelop 4.4,它包含相同的轉換器供離線使用。

實際上,SharpDevelop轉換器甚至比在線轉換器更好,因爲它可以查看您的整個項目和參考。

SharpDevelop源代碼存儲庫還包含該網站的完整源代碼。這都是開源的。

+0

一個快速測試說VB.NET到C#轉換不工作在#develop 5.0測試版(尚未)。使用4.4.1對我很好。通過Chocolatey安裝:'cinst sharpdevelop'。 http://chocolatey.org/packages?q=sharpdev – yzorg 2014-01-29 02:38:14

+0

是的,幾乎所有與VB相關的東西都從#develop 5.0中刪除。考慮到我們將不得不在新體系結構中重新實現代碼轉換,這個功能很可能不會再添加回來。 – Daniel 2014-01-29 19:27:41

+0

我看到VB.NET語言服務滯後,認爲這只是IDE集成,而不是用於轉換的核心內容。謝謝(你的)信息。所以菜單項(在工具轉換下)將被刪除? – yzorg 2014-01-29 20:02:01