Mam raczej zaangażowane rozwiązanie Visual Studio (2010, ale nie powinno to mieć znaczenia), że muszę zmienić nazwę.
Chcę zmienić nazwy folderów, aby pasowały do nowej nazwy rozwiązania, ale nie mogę znaleźć sposobu, aby automatycznie zmienić nazwy folderów, a przeglądanie każdego pliku projektu będzie bolesne.
Czy istnieje oficjalny sposób to zrobić? Alternatywnie (i znacznie mniej korzystnie), czy istnieją bezpłatne narzędzia do osiągnięcia tego?
visual-studio
David Pfeffer
źródło
źródło
Odpowiedzi:
Ręcznie edytuj plik .sln
Ta metoda ma całkowicie na celu zmianę nazwy katalogu projektu, tak jak jest to wyświetlane w Eksploratorze Windows.
Ta metoda nie ma problemów z poniższą metodą usuwania / dodawania pliku projektu (znikają odniesienia), ale może powodować problemy, jeśli projekt jest pod kontrolą źródła (patrz uwagi poniżej). Właśnie dlatego krok 2 (tworzenie kopii zapasowych) jest tak ważny.
Project1
naProject2
.Project1
zaProject2
pomocą Eksploratora Windows.Project1
naProject2
na funkcje dostarczone przez kontrolę źródła. To zachowuje historię pliku. Na przykładTortoiseSVN
klikając prawym przyciskiem myszy plik, wybierzTortoiseSVN .. Rename
.Project1
beProject2
, używając edytora tekstu, takiego jak NotePad .Możesz także zobaczyć ręczną zmianę nazwy rozwiązania lub opublikować opis tego ręcznego procesu .
Zalety
Ostrzeżenia
Aktualizacja 02.02.2014
ReSharper dodał zautomatyzowaną metodę osiągnięcia tego samego wyniku, co metoda ręczna powyżej. Jeśli przestrzeń nazw jest podkreślona kręconą niebieską linią, kliknij ikonę piramidy działania, aby:
W drugim przypadku ostatnie słowo określa nową nazwę katalogu w Eksploratorze Windows, np. Jeśli zmienimy przestrzeń nazw na
ViewModel2
, zaproponuje przeniesienie pliku do folderuViewModel2
.Jednak niekoniecznie zaktualizuje to pliki w kontroli źródła, więc może być konieczne użycie metody ręcznej.
Aktualizacja 31.01.2018
Testowane z Visual Studio 2008, 2010, 2012, 2013, 2015, 2017 Aktualizacja 1, 2, 3, 4, 5.
Aktualizacja 2020-05-02
Testowane z Visual Studio 2019.
źródło
Oto kroki, które należy wykonać, aby zmienić nazwę rozwiązania:
namespace WindowsFormsApplication1
Zmień AssemblyTitle i AssemblyProduct we właściwościach / AssemblyInfo.cs.
Usuń katalogi bin i obj fizycznie.
Zmień nazwę katalogu fizycznego folderu projektu.
Otwórz plik SLN (w notatniku lub dowolnym edytorze) i zmień ścieżkę do projektu.
Oczyść i przebuduj projekt.
źródło
Dataset
ręcznie (jeśli dołączyłeś do swojego projektu).\Packages\repositories.config
pliku.Operacje Zmień nazwę w Visual Studio zmieniają tylko nazwę pliku, tj. Dla projektu, * .prj i dla rozwiązania * .sln. Będziesz musiał osobno zmienić nazwy folderów za pomocą systemu plików, a także będziesz musiał usunąć i odczytać projekty, ponieważ będą miały nowe nazwy folderów. Należy jednak pamiętać, że pliki rozwiązania i projektu to odpowiednio pliki texst i xml. Możesz napisać własny program, który je analizuje i zmienia nazwy obu folderów, nazw plików i naprawia pliki projektu / rozwiązania wewnętrznie.
źródło
Możesz również wyeksportować szablon, a następnie utworzyć nowy projekt z wyeksportowanego szablonu, zmieniając jego nazwę według własnego uznania
źródło
Poniżej znajduje się krok po kroku sposób zmiany nazwy całego rozwiązania w Visual Studio 2013
Zakładając, że zmieniamy projekt o nazwie „HelloWorld.ui” na „Section1to5.ui”
Kliknij prawym przyciskiem myszy projekt, którego nazwę właśnie zmieniłeś, i kliknij „Właściwości”. Na karcie Aplikacja zmień „Nazwa zestawu” i „Domyślna przestrzeń nazw”.
W głównym pliku Program.cs (lub w innych utworzonych przez siebie plikach kodu) zmień nazwę deklaracji przestrzeni nazw, aby użyć nowej nazwy. W tym celu kliknij prawym przyciskiem myszy przestrzeń nazw i wybierz Refaktoryzuj> Zmień nazwę, wprowadź nową nazwę. Na przykład:
przestrzeń nazw HelloWorld.ui ----> przestrzeń nazw Section1to5.ui
Następnie rozwiń „Właściwości” i kliknij dwukrotnie plik AssemblyInfo.cs. Zauważysz poniższy fragment kodu:
Musisz zmienić AssemblyTitle i AssemblyProduct we właściwościach / AssemblyInfo.cs na nową nazwę, w tym przykładzie z „HelloWorld.ui” na „Section1to5.ui”. Po zakończeniu zmiany nazwy zapisz i zamknij Visual Studio.
W katalogu projektu przejdź do folderu „HelloWorld.ui” i usuń katalogi „bin” i „obj”.
Po zakończeniu zmień nazwę folderu „HelloWorld.ui” na nową nazwę projektu.
Otwórz plik rozwiązań o zmienionej nazwie za pomocą edytora tekstu, takiego jak Notepad lub Notepad ++, i edytuj następujący wiersz:
Project („{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}”) = „HelloWorld.ui”, „HelloWorld.ui \ HelloWorld.ui.csproj”, „{39FC65A3-3AE7-4EC9-B8F7-74F971636C70}”
Zastąp wszystkie wystąpienia „HelloWorld.ui” nową nazwą wybraną dla swojego projektu, w tym przypadku „Section1to5.ui”. To zmienia ścieżkę projektu do katalogu o zmienionej nazwie w kroku 6.
Otwórz plik rozwiązań w Visual Studio oraz wyczyść i odbuduj projekt.
Możesz zauważyć, że przycisk „Debuguj / Uruchom” został zastąpiony przyciskiem „Załącz”. Jeśli tak się stanie, wystarczy kliknąć projekt prawym przyciskiem myszy i wybrać opcję „Ustaw jako projekt StartUp”. Możesz też kliknąć Narzędzia> Dostosuj> Polecenia> Dodaj polecenie> Debuguj i dodaj przycisk.
Skończyłeś zmianę nazwy projektu, jeśli masz jakiekolwiek wątpliwości, nie krępuj się opublikować, a chętnie pomogę!
źródło
Usuń podfoldery bin i obj, aby usunąć niepoprawne odwołania, a następnie użyj systemu Windows do wyszukania starej nazwy.
Edytuj wszystkie znalezione pliki XML i przebuduj, powinno być teraz w porządku.
źródło
Użyłem rozszerzenia Visual Studio „Pełna zmiana nazwy projektu”, aby z powodzeniem zmieniać nazwy projektów w rozwiązaniu ASP.NET Core 2.
Następnie użyłem ReSharpera, aby dostosować przestrzeń nazw (kliknij prawym przyciskiem myszy projekt, refaktoryzuj, dostosuj przestrzenie nazw ...)
https://github.com/kuanysh-nabiyev/RenameProjectVsExtension
źródło
Korzystanie z funkcji „Znajdź w plikach” Notepad ++ działało dla mnie dobrze (ctrl + H, Znajdź w plikach).
http://notepad-plus-plus.org/download/v6.2.2.html
źródło
Wypróbowałem program Visual Studio Project Renamer, ale w kilku przypadkach, gdy go wypróbowałem, pojawiły się wyjątki.
Miałem dobry sukces z CopyWiz .
Nie jestem w żaden sposób z nimi związany i jeszcze za to nie zapłaciłem, ale być może będę musiał wkrótce, ponieważ jest to jedyne narzędzie, które wydaje się działać zarówno w moich projektach C #, jak i C ++. Mam jednak nadzieję, że zarobią trochę pieniędzy i nadal je poprawiają.
źródło
Usuń / dodaj metodę pliku projektu
Ta metoda ma całkowicie na celu zmianę nazwy katalogu projektu, tak jak jest to wyświetlane w Eksploratorze Windows.
Zalety
Niedogodności
Kliknięcie projektu prawym przyciskiem myszy i wybranie „Otwórz folder w Eksploratorze Windows” jest przydatne do śledzenia miejsca przechowywania projektu podczas wykonywania tego procesu.
źródło
Możesz:
kliknij plik-> nowy -> utwórz projekt z istniejącego projektu
wybierz oryginalny plik, np. rozwiązanie 1 i wprowadź nową nazwę pliku rozwiązanie 2
zmień nazwę projektu w nowym rozwiązaniu 2
źródło
Jeśli masz problemy z ładowaniem współdzielonych projektów, takich jak Xamarin, pamiętaj o zmianie odniesienia do współdzielonych bibliotek lib w plikach csproj. Opracowałem grę CocosSharp, a projekty Droid / iOS / WP81 nie chciały się ładować. Musiałem zmienić poniżej wiersza w każdym pliku csproj (Driod / iOS / WP81), który odwoływał się do biblioteki współdzielonej. Przyczyną tego była zmiana nazw folderów, dlatego zastąp YOUR_PREVIOUS_NAMESPACE nowymi nazwami folderów.
Zauważyłem również, że w przypadku projektów .Driod nazwy zestawu we właściwościach projektu nie można zmienić za pomocą programu visual studio (używam 2015). Musiałem ręcznie zmienić nazwę zestawu w pliku .Droid.csproj.
Następnie załadowałem rozwiązanie i we właściwościach projektu pojawiła się nowa nazwa. Po przebudowie wygenerowano dll o tej nazwie.
źródło
Jeśli tworzysz witrynę internetową w programie Visual Studio 2010. Możesz zmienić nazwę projektu w następujący sposób.
Krok 1: W programie Visual Studio 2010 plik SLN zostanie zapisany w folderze projektu w programie Visual Studio 2010, a pliki źródłowe w folderze witryny w programie Visual Studio 2010.
Krok 2: Zmień nazwę folderu, klikając prawym przyciskiem myszy folder do przodu według Zmień nazwę, która zawiera projekt SLN.
Krok 3: Zmień nazwę pliku SLN, klikając prawym przyciskiem myszy plik SLN do przodu, zmieniając nazwę.
Krok 4: Zmień nazwę folderu zawierającego źródło tego pliku SLN w obszarze Witryna w programie Visual Studio 2010.
Krok 5: Następnie w końcu kliknij dwukrotnie plik SLN i zmień katalog główny folderu źródłowego SLN.
źródło
Jedyne rozwiązanie, które działa dla mnie na Visual Studio 2013 w projekcie WEB:
Powiedzmy, że chcę zmienić nazwę „projekt1” na „projekt2”. Powiedzmy, że fizyczna ścieżka do mojego pliku .sln to: c: \ moja \ ścieżka \ projekt1 \ projekt1.sln
więc ścieżka do mojego pliku .csproj oraz folderów bin i obj powinna wyglądać następująco: c: \ moja \ ścieżka \ projekt1 \ projekt1 \
Otwórz rozwiązanie w VS, klikając dwukrotnie plik project1.sln.
W Solution Explorer kliknij prawym przyciskiem myszy projekt (NIE rozwiązanie !!!), wybierz Zmień nazwę i wprowadź nową nazwę.
W Solution Explorer kliknij projekt prawym przyciskiem myszy i wybierz Właściwości. Na karcie Aplikacja zmień ustawienia „Nazwa zestawu” i „Domyślna przestrzeń nazw”.
W głównym pliku CS (lub dowolnym innym pliku kodu, na przykład Global.asax), zmień nazwę deklaracji przestrzeni nazw, aby użyć nowej nazwy. W tym celu kliknij prawym przyciskiem myszy przestrzeń nazw i wybierz Refaktoryzuj> Zmień nazwę, wprowadź nową nazwę. Na przykład:
projekt przestrzeni nazw 1
4.1 W Eksploratorze rozwiązań kliknij prawym przyciskiem myszy projekt (NIE rozwiązanie !!!), wybierz Zmień nazwę i wprowadź nową nazwę.
1 [zespół: AssemblyTitle („Nowa nazwa tutaj”)] 2 [zespół: AssemblyDescription („”)] 3 [zespół: AssemblyConfiguration („”)] 4 [zespół: AssemblyCompany („”)] 5 [zespół: AssemblyProduct (” Nowa nazwa tutaj ”)] 6 [zgromadzenie: AssemblyCopyright („ Copyright © 2013 ”)] 7 [zgromadzenie: AssemblyTrademark („ ”)] 8 [zgromadzenie: AssemblyCulture („ ”)]
Zamknij Visual Studio.
Usuń katalogi bin i obj fizycznie.
Zmień nazwę folderu nadrzędnego i folderu źródłowego na nową nazwę (project2):
W przykładzie: c: \ moja \ ścieżka \ projekt1 \ projekt1
będzie: c: \ moja \ ścieżka \ projekt2 \ projekt2
Zmień nazwę nazwy pliku SLN, klikając prawym przyciskiem myszy plik SLN do przodu przez Zmień nazwę.
Następnie otwórz plik SLN (w notatniku lub dowolnym edytorze) i skopiuj i zamień (Ctrl + h) dowolną starą nazwę na nową.
Otwórz VS i kliknij BUILD -> Clean Solution
kliknij Kompiluj -> Kompiluj rozwiązanie, a następnie F5, aby uruchomić ...
Uwaga 1: Jeśli pojawi się coś takiego: Błąd kompilacji CS0246: Nie można znaleźć typu lub nazwy przestrzeni nazw „projekt2” (brakuje dyrektywy używającej lub odwołania do zestawu?)
Plik źródłowy: c: \ Users \ Nazwa użytkownika \ AppData \ Local \ Temp \ Temporary ASP.NET Files \ root \ 78dd917f \ d0836ce4 \ App_Web_index.cshtml.a8d08dba.b0mwjmih.0.cs
Następnie przejdź do folderu „Tymczasowe pliki ASP.NET” i usuń wszystko.
źródło
Jestem nowy w VS. Właśnie miałem ten sam problem: po kilku tygodniach pracy musiałem zmienić nazwę rozpoczętego projektu. To, co zrobiłem i zadziałało.
Eksploratora rozwiązań, a na pierwszej karcie zmień domyślny formularz startowy na taki, jaki powinien być.
Może więcej kroków, ale mniej pisania lub wcale, tylko kilka kliknięć myszą. Mam nadzieję, że to pomoże :)
źródło
Użyłem linku https://gist.github.com/n3dst4/b932117f3453cc6c56be i udało mi się zmienić nazwę całego rozwiązania.
źródło
wraz z odpowiedzią na ten link
https://stackoverflow.com/a/19844531/6767365
zmień nazwy tych plików. Zmieniłem nazwę mojego projektu na MvcMovie i działa dobrze
źródło
Aby zmienić nazwę witryny:
http://www.c-sharpcorner.com/Blogs/46334/rename-website-project-in-visual-studio-2013.aspx
zlokalizuj i edytuj applicationhost.config IISExpress, który znajduje się tutaj: C: \ Users {nazwa użytkownika} \ Documents \ IISExpress \ config
źródło