Предупреждение Visual Studio: "Некоторые свойства, связанные с решением, не могут быть прочитаны"

Вчера я внесла некоторые изменения для своего решения, например, переименовал его и переместился в другое место на сервере TFS 2013.

Сегодня я получил сообщение

"Один или несколько проектов в решении были неправильно загружены. Подробнее см. Окно вывода.

при открытии решения в Visual Studio:

Несчастливо детали в выходном окне не были очень полезны:

Некоторые свойства, связанные с решением, не могут быть прочитаны

У меня только один проект в решении. Вот файл решения.

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2013
VisualStudioVersion = 12.0.21005.1
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GenericIVR",  "OutboundGeneric\GenericIVR.csproj", "{3B46A2C8-B9FF-48F3-978D-CF27B1EC917D}"
EndProject
Global
    GlobalSection(TeamFoundationVersionControl) = preSolution
        SccNumberOfProjects = 1
        SccEnterpriseProvider = {4CA58AB2-18FA-4F8D-95D4-32DDF27D184C}
        SccTeamFoundationServer = http://tfs01:8080/tfs/software%20repository
        SccProjectUniqueName0 = OutboundGeneric\\GenericIVR.csproj
    EndGlobalSection
    GlobalSection(SolutionConfigurationPlatforms) = preSolution
        Debug|Any CPU = Debug|Any CPU
        AnotherDebug|Any CPU = AnotherDebug|Any CPU
        Release|Any CPU = Release|Any CPU
    EndGlobalSection
    GlobalSection(ProjectConfigurationPlatforms) = postSolution
        {3B46A2C8-B9FF-48F3-978D-CF27B1EC917D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
        {3B46A2C8-B9FF-48F3-978D-CF27B1EC917D}.Debug|Any CPU.Build.0 = Debug|Any CPU
        {3B46A2C8-B9FF-48F3-978D-CF27B1EC917D}.AnotherDebug|Any CPU.ActiveCfg = AnotherDebug|Any CPU
        {3B46A2C8-B9FF-48F3-978D-CF27B1EC917D}.AnotherDebug|Any CPU.Build.0 = AnotherDebug|Any CPU
        {3B46A2C8-B9FF-48F3-978D-CF27B1EC917D}.Release|Any CPU.ActiveCfg = Release|Any CPU
        {3B46A2C8-B9FF-48F3-978D-CF27B1EC917D}.Release|Any CPU.Build.0 = Release|Any CPU
 EndGlobalSection
 GlobalSection(SolutionProperties) = preSolution
        HideSolutionNode = FALSE
 EndGlobalSection
EndGlobal

Ответ 1

Отредактируйте раздел GlobalSection (TeamFoundationVersionControl) = preSolution со следующими строками после "SccTeamFoundationServer":

    SccLocalPath0 = .
    SccProjectUniqueName1 = OutboundGeneric\\GenericIVR.csproj
    SccProjectName1 = GenericIVR
    SccLocalPath1 = GenericIVR

Не спрашивайте меня, почему этот SccLocalPath0 должен присутствовать, но я видел его и в старой версии VS.

Ответ 2

Следуя приведенному выше предложению, я обнаружил, что в моем случае файл решения имел неправильное количество сконфигурированных SccNumberOfProjects. Как-то мне удалось получить 15, быстрый подсчет и исправление количества проектов, содержащихся в решении, исправили его для меня.

Global  
   GlobalSection(TeamFoundationVersionControl) = preSolution
     SccNumberOfProjects = 13
     SccEnterpriseProvider = {4CA58AB2-18FA-4F8D-95D4-32DDF27D184C}

Ответ 3

У меня также была аналогичная проблема, в моем случае у меня было два раздела GlobalSection (TeamFoundationVersionControl) = preSolution в моем sln. я вручную удалил содержимое раздела (и полностью удалил 2). Затем я открыл свое решение и получил решение об ошибке, не находящееся под контролем источника. Затем я снова добавил его в исходное управление с помощью Добавить в исходное управление. Затем я сохранил все, и раздел был восстановлен.

Ответ 4

Я не совсем уверен, что вызвало это для меня, но мое решение состояло в том, чтобы удалить все между "Global" и "EndGlobal", а затем открыть решение. Он перестроил файл решения и отлично работает. Сравнивая старые и новые, кажется вероятным, что в GlobalSection (SolutionConfigurationPlatforms) была добавлена ​​посторонняя информация = preSolution

До:

GlobalSection(SolutionConfigurationPlatforms) = preSolution
    Debug|Any CPU = Debug|Any CPU
    Debug|Default = Debug|Default
    Release|Any CPU = Release|Any CPU
    Release|Default = Release|Default
EndGlobalSection

После

GlobalSection(SolutionConfigurationPlatforms) = preSolution
    Debug|Any CPU = Debug|Any CPU
    Release|Any CPU = Release|Any CPU
EndGlobalSection

Ответ 5

Подобный ответ на anhoppe, но с несколькими отличиями.

У меня была ситуация, когда слияние файла .sln приводило к двум отдельным разделам GlobalSection (TeamFoundationVersionControl), первое из которых содержало неправильное количество проектов, второе - правильное число.

Сначала я удалил первый GlobalSection (TeamFoundationVersionControl) и оставил второй на своем месте. Это не сработало, и я все еще видел ошибку...

Некоторые свойства, связанные с решением, не могут быть прочитать

Итак, я отключил это изменение, а затем удалил только второй GlobalSection (TeamFoundationVersionControl), сохранил и повторно открыл решение. Это сделало эту работу, и мне просто пришлось повторно добавить пару проектов, которые были взяты из источника управления.

Ответ 6

Просто исправлена ​​проблема в VS2015, отредактировав файл .sln...

Каждая запись в

GlobalSection (ProjectConfigurationPlatforms) = разделы postSolution

необходимо иметь обе записи для каждой конфигурации

{3B46A2C8-B9FF-48F3-978D-CF27B1EC917D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3B46A2C8-B9FF-48F3-978D-CF27B1EC917D}.Debug|Any CPU.Build.0 = Debug|Any CPU

Когда

решение не может быть прочитано

присутствовала только запись ActiveCfg. Добавлена ​​запись Build.0, где она была опущена, и

решение не может быть прочитано

было исправлено.