Visual Studio 2015项目存在但不再显示在解决方案资源管理器中

时间:2017-01-09 02:03:16

标签: visual-studio-2015

我有一个已经从另一个有效克隆的解决方案。克隆的解决方案工作正常,但原始神秘地停止了工作。

解决方案文件包含项目

Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CMS", "CMS\CMS.csproj", "{0EABB8B8-2784-4BBA-B2E8-5D7B4A302182}"
EndProject

CMS.csproj项目文件显示在CMS子文件夹中。

但是当我加载解决方案时,项目没有出现在解决方案资源管理器中。实际上解决方案是空的。

我可以直接加载项目文件,然后VS会在解决方案资源管理器中将其显示在与项目同名的解决方案中。但我不明白为什么我的原始解决方案不起作用。没有错误消息。

有没有人有任何想法?

1 个答案:

答案 0 :(得分:0)

嗯,我已经找到了解决方案,但答案只是提出了另一堆问题。

比较两个项目的.suo文件,我发现那个没有工作的文件已经添加了额外的缩进级别(即每行前面的制表符)。见下文。

当我拿出这些额外的标签时,项目重新出现在解决方案资源管理器中。

这提出了以下两个问题(如果您有任何想法,请在评论中添加它们)......

我还没有编辑.suo文件。永远。这些标签是如何添加的?

鉴于.suo文件已包含缩进部分的选项卡。鉴于这些部分是由[SectionName] End [SectionName]语句明确定义的,为什么Visual Studio不会简单地忽略标签?

    Microsoft Visual Studio Solution File, Format Version 12.00
    # Visual Studio 14
    VisualStudioVersion = 14.0.24720.0
    MinimumVisualStudioVersion = 10.0.40219.1
    Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CMS", "CMS\CMS.csproj", "{0EABB8B8-2784-4BBA-B2E8-5D7B4A302182}"
    EndProject
    Global
        GlobalSection(SolutionConfigurationPlatforms) = preSolution
            Debug|Any CPU = Debug|Any CPU
            Release|Any CPU = Release|Any CPU
        EndGlobalSection
        GlobalSection(ProjectConfigurationPlatforms) = postSolution
            {0EABB8B8-2784-4BBA-B2E8-5D7B4A302182}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
            {0EABB8B8-2784-4BBA-B2E8-5D7B4A302182}.Debug|Any CPU.Build.0 = Debug|Any CPU
            {0EABB8B8-2784-4BBA-B2E8-5D7B4A302182}.Release|Any CPU.ActiveCfg = Release|Any CPU
            {0EABB8B8-2784-4BBA-B2E8-5D7B4A302182}.Release|Any CPU.Build.0 = Release|Any CPU
        EndGlobalSection
        GlobalSection(SolutionProperties) = preSolution
            HideSolutionNode = FALSE
        EndGlobalSection
    EndGlobal