Jak przekonwertować projekt VB na projekt C # [zamknięte]

85

Mam projekt napisany w VB i muszę przekonwertować cały projekt na projekt C #. Nie chcę tego robić plik po pliku, znalazłem kilka konwerterów online, ale konwertują one tylko linie kodów, a nie cały projekt. Znalazłem na badaniach, a tu napisano, że widziałem to pytanie , tam napisano

„Najlepsze w Sharpdevelop jest to, że konwertuje cały projekt (pliki źródłowe) z VB i C # i na odwrót”

Zbadałem również w Google, że jeśli klikniesz prawym przyciskiem myszy projekt, znalazłem tutaj , że „Kliknij prawym przyciskiem myszy projekt w oknie Projekty i wybierz Konwertuj - z VB.NET na C #”. Ale kiedy kliknę prawym przyciskiem myszy Projekt w oknie Projekty, mogę znaleźć to „Konwertuj”. Czy muszę zainstalować jakieś narzędzie dla SharpDevelop i wtedy będę mógł przekonwertować swój projekt? Dzięki

Romo Daneghyan
źródło
37
Ten wątek nie powinien zostać zamknięty z 9719 widokami i 21452 widokami dla jego następnego połączonego pytania SO. Jest to bardzo częsty problem i szukałem w Google tej samej sprawy, więc w końcu znalazłem tutaj odpowiedź od MattWarda, przekierowując z innego powiązanego pytania, które również jest już zamknięte! Otwórz ponownie ten temat.
Mojtaba Rezaeian
Dziwne, że to się teraz ponownie otwiera. Ktokolwiek głosował na ponowne otwarcie, powinien opublikować komentarz wyjaśniający, dlaczego.
Joshua
6
@Joshua Nie mam wystarczającej liczby przedstawicieli, aby ponownie głosować za ponownym otwarciem, ale zrobiłbym to, gdybym mógł. Jest to oczywiście popularne pytanie dla programistów .NET. Obecne odpowiedzi tutaj są już nieaktualne, a zamknięcie tego prowadzi do większej liczby duplikatów i spamu, a nie mniej. Tak, technicznie pytanie dotyczy rekomendacji narzędzia, ale nie jest to pytanie „jakie IDE jest najlepsze” czy coś w tym rodzaju. Stwarza specyficzny problem związany z programowaniem, do rozwiązania którego istnieją narzędzia i skrypty.
davidmdem
1
@ user1751825: Prosi o zalecenie narzędzia, które jest zdefiniowane jako niezwiązane z tematem.
Joshua

Odpowiedzi:

103

Zakładam, że wypróbowałeś SharpDevelop 5, ponieważ w tej wersji brakowało funkcji konwersji.

VB do C # konwerter kodu z zespołu SharpDevelop jest samodzielnym rozszerzeniem do programu Visual Studio. Po zainstalowaniu można przekonwertować cały projekt VB.NET na C #, otwierając rozwiązanie, klikając prawym przyciskiem myszy węzeł rozwiązania w Eksploratorze rozwiązań i wybierając opcję Konwertuj na C # .

Matt Ward
źródło
1
och, nie wiedziałem tego. Tak, używałem Sharp Developer 5. Zainstalowałem SharpDeveloper 4.4 i było tam to narzędzie do konwersji. Dziękuję @Matt Ward :)
Romo Daneghyan
60
Taki znajomy wzorzec przepełnienia stosu. Częste pytanie wyświetlane tysiące razy z poprawną i konkretną odpowiedzią, która znajduje się wysoko w wynikach wyszukiwania Google dla podobnych zapytań! :-) ... zamknięte jako nie na temat.
kdbanman,
czy oni to pokochali SharpDevelop 5? Dlaczego?
Zestaw narzędzi
2
@Toolkit - Został usunięty, ponieważ SharpDevelop 5 nie obsługuje VB.NET.
Matt Ward
Pobrałem SD 4.4, ale nie mogę otworzyć projektu VB.NET: --------------------------- Błąd ------- -------------------- Błąd podczas ładowania C: \ www \ 3MD Inc \ 3MDinc \ 3MDinc.vbproj: Zaimportowany projekt „C: \ Program Files (x86) \ MSBuild \ Microsoft \ VisualStudio \ v12.0 \ WebApplications \ Microsoft.WebApplication.targets ”nie został znaleziony. Sprawdź, czy ścieżka w deklaracji <Import> jest poprawna i że plik istnieje na dysku. C: \ www \ 3MD Inc \ 3MDinc \ 3MDinc.vbproj
Oleg Sh
4

Przepraszam, ale nie znalazłem żadnych narzędzi, które przekonwertują cały projekt. Właśnie utworzyłem tymczasowy projekt C # i w przeszłości konwertowałem małe części w sekcji. Konwersja nie jest prostą mapą kodów jeden-2-jeden z różnych powodów ze względu na różnice w językach. Małe kroki i dobre testy jednostkowe pomagają przyspieszyć działanie. Alternatywnie, jeśli twój kod używa narzędzi generatorów kodu dostarczonych przez CodesmithTools, często mają one przełączniki kompilatora, które pomogą zmienić języki .net. Moim skromnym zdaniem to na pewno pomoże.

Jamie Clayton
źródło
Dzięki za odpowiedź. Chyba muszę konwertować projekt konwertując pliki jeden po drugim :)
Romo Daneghyan