Попередження Visual Studio: "Деякі властивості, пов'язані з рішенням, не вдалося прочитати"


160

Коли я відкриваю своє рішення, я отримую діалогове вікно з цим попередженням. Рішення (один веб-додаток, проект одного класу) будується без помилок.

Як я можу визначити, які властивості викликають проблему, і усунути помилку?

Відповіді:


281

Я просто вирішив подібну проблему з рішенням VS2010 з 35 проектами ... Причина була дубльована

GlobalSection(TeamFoundationVersionControl)

розділ у файлі рішення. Я закрив рішення, видалив дублікат конфігурації GlobalSection (TeamFoundationVersionControl) і перезавантажив рішення, і попереджувальне повідомлення не було.

Якщо це не проблема для вас, враховуючи, що у вас є лише два проекти, я б звалив файл розбитого рішення, створив би нове рішення і повторно додав би два ваші проекти ...


6
Якщо була така ж проблема з VS2012, це рішення спрацювало. Дякую!
Давид Айрапетян

4
Чи можна припустити, що GlobalSection (TeamFoundationVersionControl), який слід видалити, є нижньою?
frostshoxx

4
У мене була така ж проблема, і я просто видалив нижню. Це вирішило проблему. Здається, що злиття часом викликає це.
MaiOM

12
Це був найнижчий для мене (явно застарів). Я підозрюю, що VS використовує перше, що знайде. У моєму випадку це було викликано злиттям TFS.
Ігбі Ларгеман

2
Та ж проблема в VS2013 з дублікатом GlobalSection - виправлено видаленням
Марк Хосан

31

Схоже, існує ряд причин цього попередження. Я отримував це, тому що мій файл рішення, SccNumberOfProjects = 4коли було лише 3.


25

Краще рішення , щоб змусити VS регенерувати конфіги. Зробити це:

  1. Відкрийте файл sln за допомогою текстового редактора.
  2. Прокрутіть униз до тих пір, поки не досягнете останнього елемента "EndProject".
  3. Видаліть усе після цього.
  4. Збережіть, закрийте та відновіть рішення, і все відновиться.

Це рішення було ідеальним для моєї ситуації. Я отримував дві подібні помилки: The following property is missing or has incorrect value: SccLocalPath63і The following property is missing or has incorrect value: SccLocalPath64
user919426

2
Це рішення працювало для мене в VS 2017. Він фактично відновлює, що коли файл sln відкривається. Зауважте, що EndProject - це одне слово.
Варун Шарма

Це було виправданням для мене. Єдиною різницею у файлі рішення був SolutionGuid.
ADH

2
Це працює для мене в VS 2017. Єдине , що я повинен додати це ... якщо Youre використанням Solution Folders ... ви збираєтеся повинні відкинути свої проекти назад в правильних «слотів»
Ув'язнений ZERO

1
Це працювало для мене у VS 2019. У мене були дублікати розділів, як згадувалося в інших рішеннях, але коли я їх видалю, вони повернуться. Це єдиний, хто працював.
fehays

8

Я просто вирішив подібне питання у VS2012 із 44 проектами.

Причиною було поєднання дублюючого GlobalSection(TeamFoundationVersionControl)розділу (відповідь а-ля Бойц), але у мене також було кілька дублюваних проектів - а також кілька посилань на проекти, які нещодавно були видалені - в GlobalSection(TeamFoundationVersionControl)розділі, який я зберігав.

Після того, як я переконався, що всі згадані проекти відповідають 1: 1 фактичним проектам у моєму вирішенні, попередження пройшло.

Убік: я підозрюю, що більшість цих питань можна було б уникнути, якщо пильну увагу приділено .sln під час філій та злиття, але хто знає, що VS думає іноді ...


5

Вище було помилок. Я перейменував проект, зберег закритий, знову відкрив, змінив назву назад. Це відтворює .sln файл і в моєму випадку виймав усі зайві елементи.


Тут найлегше виправити. Не турбуйтеся .slnшукати помилки.
Джонатан Ландрум

Чи можете ви трохи розширити це. Деякі користувачі можуть не розуміти. Ви хочете перейменувати його в Explorer або Visual studio або у фактичному файлі?
iTechy

1
Зробіть це в Visual Studio, ви клацнете правою кнопкою миші на проект, змініть ім'я на що-небудь, а потім збережіть і вийдіть. Повторно відкрийте та поверніться до оригіналу, збережіть та вийдіть із системи. знову відкрийте рішення, і помилка повинна бути знищена.
CThin

2

Вирішено ідентичне повідомлення про помилку в VS2012, дотримуючись припущення Boycs. Для мене проблемою були два сторонні GlobalSection(SolutionConfigurationPlatforms) = preSolutionблоки внизу мого файлу SLN.


2

Для мене проблемою були порожні пробіли (завдяки copy-paste) в кінці кожного рядка. Видаляючи їх, я більше не отримав помилку.


2

У VS 2015 у мене було два таких розділи " GlobalSection (TeamFoundationVersionControl) = preSolution "

Перший включав останній проект, доданий до рішення, другий (наприкінці файлу рішення). Після видалення другого рішення рішення відкрилося у VS 2015 без жодних помилок.


1

Інші відповіді вже пояснюють, як виправити проблему. Можливо, я можу допомогти, щоб проблему не було знову:

Як я отримав проблему Наш файл рішення змішався, коли я до нього додав новий проект, тоді як інший розробник також додав новий проект і здійснив його зміни (яких я не отримав у своїй локальній системі). Коли я почав вносити свої зміни, мені довелося об'єднати файл .sln, де я, очевидно, зіпсувався :-)

Що я дізнався

Файли рішення жахливо зливатися. Якщо ви додаєте проект, зробіть наступне: 1. Отримайте останню версію 2. Додайте проект 3. Здійсніть

Якщо ви бачите файл рішення під час очікування змін, але ви не бачите змін у режимі порівняння, вам потрібно натиснути «Зберегти все». Додаючи новий проект, VisualStudio також змінив рішення. Однак на даний момент це незбережена зміна.


1

Перевірте свій файл SccNumberOfProjects у вашому .sln файлі, він може відрізнятися від фактичного номера проекту.


0

Я вирішив подібну проблему в vs2012.

в моєму випадку проблема полягала в тому, що значення властивості SccProjectName0 всередині GlobalSection у файлі MySolutionName.sln було порожнім.

Я вирішив це, встановивши значення SccProjectName0 з копією цього значення рядка з іншого рішення та замінивши ім'я проекту в рядку на поточне (BTW - якщо назва вашого проекту як пробіл у ньому (''), потрібно замінити на \ \ u0020 ').

*

в моєму випадку проблема починається після того, як я помилково відкрив рішення, кероване TFS, зі старим файлом MySolutionName.sln того самого рішення, який час контролював VSS.


0

VS2015 Update 3. [GlobalSection (TeamFoundationVersionControl) = preSolution] дублювався у файлі рішення. У нижньому дублікаті містився проект, який раніше було видалено ... тож видалення дубліката вирішило проблему. Я думаю, що дублювання було викликано попередньою проблемою з об'єднанням.


0

Я можу додати ще одне можливе рішення - ухильне злиття означало, що одна із строф SccProjectUniqueName / SccProjectName / SccLocalPath всередині розділу GlobalSection (TeamFoundationVersionControl) мала номери, які не були унікальними, навіть якщо SccNumberOfProjects було правильним. Виправлено нумерацію, повідомлення про помилку пішло.


0

VS 2019 - Я вперше відкривав проект VS 2017 в VS 2019. У вікні Вихід натисніть "Показати вихід з:" DDL та перегляньте ваші параметри, тому що ви можете побачити додаткову інформацію про помилки.

У моєму випадку рішення полягало в тому, щоб просто перенастроїти мої відображення управління джерелами на 2019 рік.

  • Перейдіть до Team Explorer
  • Натисніть кнопку Керування підключеннями (плагін)
  • Клацніть посилання Управління з’єднаннями та підключіться до проекту ...
  • ...

-1

У мене була така ж проблема, і моє рішення:

  1. Відкрийте рішення в VS
  2. Встановіть платформу рішень за замовчуванням
  3. Збережи це
  4. Закрийте VS
  5. Відкрийте .sln файл у Блокноті ++ (або будь-який інший редактор)
  6. Видаліть усі інші елементи платформи рішення звідусіль
  7. (наприклад: {73E03C8F-1F76-45E2-9D45-FA040A63F0AA}. Release | Будь-який процесор.Build.0 = Випуск | Будь-який процесор)
  8. Збережіть його та знову відкрийте рішення.

Це працює для мене.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.