Odpowiedzi:
Właśnie naprawiłem podobny problem z rozwiązaniem VS2010 z 35 projektami ... Przyczyna była powielona
GlobalSection(TeamFoundationVersionControl)
sekcji w pliku rozwiązania. Zamknąłem rozwiązanie, usunąłem zduplikowaną konfigurację GlobalSection (TeamFoundationVersionControl) i ponownie załadowałem rozwiązanie, a komunikat ostrzegawczy zniknął.
Jeśli to nie jest dla Ciebie problem, biorąc pod uwagę, że masz tylko 2 projekty, porzuciłbym uszkodzony plik rozwiązania, stworzył nowe rozwiązanie i ponownie dodałbym Twoje dwa projekty ...
Najlepszym rozwiązaniem jest, aby zmusić VS do regeneracji configs. Aby to zrobić:
The following property is missing or has incorrect value: SccLocalPath63
The following property is missing or has incorrect value: SccLocalPath64
Właśnie naprawiłem podobny problem w VS2012 z 44 projektami.
Przyczyną było połączenie zduplikowanej GlobalSection(TeamFoundationVersionControl)
sekcji (odpowiedź a la Boycs), ale miałem też zduplikowanych kilka projektów - a także kilka odniesień do projektów, które zostały niedawno usunięte - w GlobalSection(TeamFoundationVersionControl)
sekcji, którą zachowałem.
Gdy upewniłem się, że wszystkie wymienione projekty odpowiadają 1: 1 rzeczywistym projektom w moim rozwiązaniu, ostrzeżenie zniknęło.
Na marginesie: podejrzewam, że większości tych problemów można było uniknąć, zwracając większą uwagę na .sln podczas łączenia gałęzi i zatwierdzania, ale kto wie, o czym myśli VS czasami ...
Powyżej miałem mnóstwo błędów. Zmieniłem nazwę projektu, zapisałem jako zamknięty, ponownie otworzyłem i zmieniłem nazwę z powrotem. To odtwarza plik .sln iw moim przypadku usuwa wszystkie dodatkowe elementy.
.sln
poszukiwaniu błędów.
Rozwiązano identyczny komunikat o błędzie w VS2012, podążając za przykładem Boycs. Dla mnie problemem były dwa obce GlobalSection(SolutionConfigurationPlatforms) = preSolution
bloki na dole mojego pliku SLN.
W VS 2015 miałem dwie z tych sekcji „ GlobalSection (TeamFoundationVersionControl) = preSolution ”
Pierwsza obejmowała najnowszy projekt dodany do rozwiązania, druga (pod koniec pliku rozwiązania) nie. Po usunięciu drugiego rozwiązanie otworzyło się w VS 2015 bez żadnych błędów.
Pozostałe odpowiedzi już wyjaśniają, jak rozwiązać problem. Może pomogę, aby problem ponownie się nie pojawił:
Skąd mam problem? Nasz plik rozwiązania się pomieszał, kiedy dodałem do niego nowy projekt, podczas gdy inny programista również dodał nowy projekt i wprowadził zmiany (których nie dostałem w moim lokalnym systemie). Kiedy zacząłem zatwierdzać zmiany, musiałem scalić plik .sln, w którym oczywiście zawiodłem :-)
Czego się nauczyłem
Scalanie plików rozwiązań jest okropne. Jeśli dodasz projekt, wykonaj następujące czynności: 1. Pobierz najnowszą wersję 2. Dodaj projekt 3. Zatwierdź
Jeśli widzisz plik rozwiązania pod oczekującymi zmianami, ale nie widzisz zmiany w trybie porównania, musisz nacisnąć „Zapisz wszystko”. Podczas dodawania nowego projektu VisualStudio zmieniło również rozwiązanie. Jednak w tej chwili jest to niezapisana zmiana.
Sprawdź SccNumberOfProjects w .sln pliku mogą być różni się od rzeczywistej liczby projektów.
naprawiłem podobny problem w vs2012.
w moim przypadku problem polegał na tym, że wartość właściwości SccProjectName0 wewnątrz GlobalSection w pliku MySolutionName.sln była pusta.
rozwiązałem to, ustawiając wartość SccProjectName0 z kopią tej wartości ciągu z innego rozwiązania i zamieniając nazwę projektu w ciągu na bieżącą (BTW - jeśli nazwa projektu jest w nim spacja (``), musi zamień na „\ u0020”).
*
w moim przypadku problem zaczyna się po omyłkowym otwarciu rozwiązania kontrolowanego przez TFS ze starym plikiem MySolutionName.sln tego samego rozwiązania od czasu, gdy to rozwiązanie było kontrolowane przez VSS.
Aktualizacja 3. VS2015 [GlobalSection (TeamFoundationVersionControl) = preSolution] została zduplikowana w pliku rozwiązania. Dolna kopia zawierała projekt, który został wcześniej usunięty ... więc usunięcie tego duplikatu rozwiązało problem. Myślę, że duplikacja była spowodowana przez poprzedni problem z łączeniem.
Mogę dodać jeszcze jedno możliwe rozwiązanie - podejrzane scalenie oznaczało, że jedna z sekcji SccProjectUniqueName / SccProjectName / SccLocalPath w sekcji GlobalSection (TeamFoundationVersionControl) zawierała numery, które nie były unikalne, mimo że SccNumberOfProjects było poprawne. Poprawiono numerację, komunikat o błędzie zniknął.
VS 2019 - Po raz pierwszy otwierałem projekt VS 2017 w VS 2019. W oknie Dane wyjściowe kliknij „Pokaż dane wyjściowe z:” i przejrzyj dostępne opcje, ponieważ mogą zostać wyświetlone dodatkowe informacje o błędzie.
W moim przypadku rozwiązaniem była po prostu ponowna konfiguracja moich mapowań kontroli źródła na 2019 rok.
Miałem ten sam problem, a moje rozwiązanie to:
To działa dla mnie.