Відповіді:
Я просто вирішив подібну проблему з рішенням VS2010 з 35 проектами ... Причина була дубльована
GlobalSection(TeamFoundationVersionControl)
розділ у файлі рішення. Я закрив рішення, видалив дублікат конфігурації GlobalSection (TeamFoundationVersionControl) і перезавантажив рішення, і попереджувальне повідомлення не було.
Якщо це не проблема для вас, враховуючи, що у вас є лише два проекти, я б звалив файл розбитого рішення, створив би нове рішення і повторно додав би два ваші проекти ...
Краще рішення , щоб змусити VS регенерувати конфіги. Зробити це:
The following property is missing or has incorrect value: SccLocalPath63
і The following property is missing or has incorrect value: SccLocalPath64
Я просто вирішив подібне питання у VS2012 із 44 проектами.
Причиною було поєднання дублюючого GlobalSection(TeamFoundationVersionControl)
розділу (відповідь а-ля Бойц), але у мене також було кілька дублюваних проектів - а також кілька посилань на проекти, які нещодавно були видалені - в GlobalSection(TeamFoundationVersionControl)
розділі, який я зберігав.
Після того, як я переконався, що всі згадані проекти відповідають 1: 1 фактичним проектам у моєму вирішенні, попередження пройшло.
Убік: я підозрюю, що більшість цих питань можна було б уникнути, якщо пильну увагу приділено .sln під час філій та злиття, але хто знає, що VS думає іноді ...
Вище було помилок. Я перейменував проект, зберег закритий, знову відкрив, змінив назву назад. Це відтворює .sln файл і в моєму випадку виймав усі зайві елементи.
.sln
шукати помилки.
Вирішено ідентичне повідомлення про помилку в VS2012, дотримуючись припущення Boycs. Для мене проблемою були два сторонні GlobalSection(SolutionConfigurationPlatforms) = preSolution
блоки внизу мого файлу SLN.
У VS 2015 у мене було два таких розділи " GlobalSection (TeamFoundationVersionControl) = preSolution "
Перший включав останній проект, доданий до рішення, другий (наприкінці файлу рішення). Після видалення другого рішення рішення відкрилося у VS 2015 без жодних помилок.
Інші відповіді вже пояснюють, як виправити проблему. Можливо, я можу допомогти, щоб проблему не було знову:
Як я отримав проблему Наш файл рішення змішався, коли я до нього додав новий проект, тоді як інший розробник також додав новий проект і здійснив його зміни (яких я не отримав у своїй локальній системі). Коли я почав вносити свої зміни, мені довелося об'єднати файл .sln, де я, очевидно, зіпсувався :-)
Що я дізнався
Файли рішення жахливо зливатися. Якщо ви додаєте проект, зробіть наступне: 1. Отримайте останню версію 2. Додайте проект 3. Здійсніть
Якщо ви бачите файл рішення під час очікування змін, але ви не бачите змін у режимі порівняння, вам потрібно натиснути «Зберегти все». Додаючи новий проект, VisualStudio також змінив рішення. Однак на даний момент це незбережена зміна.
Перевірте свій файл SccNumberOfProjects у вашому .sln файлі, він може відрізнятися від фактичного номера проекту.
Я вирішив подібну проблему в vs2012.
в моєму випадку проблема полягала в тому, що значення властивості SccProjectName0 всередині GlobalSection у файлі MySolutionName.sln було порожнім.
Я вирішив це, встановивши значення SccProjectName0 з копією цього значення рядка з іншого рішення та замінивши ім'я проекту в рядку на поточне (BTW - якщо назва вашого проекту як пробіл у ньому (''), потрібно замінити на \ \ u0020 ').
*
в моєму випадку проблема починається після того, як я помилково відкрив рішення, кероване TFS, зі старим файлом MySolutionName.sln того самого рішення, який час контролював VSS.
VS2015 Update 3. [GlobalSection (TeamFoundationVersionControl) = preSolution] дублювався у файлі рішення. У нижньому дублікаті містився проект, який раніше було видалено ... тож видалення дубліката вирішило проблему. Я думаю, що дублювання було викликано попередньою проблемою з об'єднанням.
Я можу додати ще одне можливе рішення - ухильне злиття означало, що одна із строф SccProjectUniqueName / SccProjectName / SccLocalPath всередині розділу GlobalSection (TeamFoundationVersionControl) мала номери, які не були унікальними, навіть якщо SccNumberOfProjects було правильним. Виправлено нумерацію, повідомлення про помилку пішло.
VS 2019 - Я вперше відкривав проект VS 2017 в VS 2019. У вікні Вихід натисніть "Показати вихід з:" DDL та перегляньте ваші параметри, тому що ви можете побачити додаткову інформацію про помилки.
У моєму випадку рішення полягало в тому, щоб просто перенастроїти мої відображення управління джерелами на 2019 рік.
У мене була така ж проблема, і моє рішення:
Це працює для мене.