在Visual Studio解决方案下创建的文件夹未在源代码控制资源管理器中显示

5
我将我的MVC解决方案转换为分层架构。 为此,我在Solution Explorer中添加了文件夹。一切都很好,我的同事能够获取最新的解决方案并在解决方案资源管理器中显示文件夹。
问题是,在TFS(即源代码控制资源管理器)中,我无法看到文件夹结构。
可能我应该直接在TFS中创建文件夹结构。但是现在我已经有很多变更被检查进来了,所以我认为这个选项将不起作用。
请给予建议。

你是不是创建了解决方案文件夹而不是标准文件夹?解决方案文件夹只是为了解决方案资源管理器而虚拟存在的。 - TcKs
新建的文件夹是空的吗?如果是,TFS默认不会将其显示为待检入的更改。https://dev59.com/_EbRa4cB1Zd3GeqP4d5L - Mark Rawson
@MarkRawson 谢谢你提供的链接,非常有用。但在我的情况下,文件夹不是空的,我在文件夹中添加了几个项目,然后将其检入解决方案。 - winterishere
我不认为在TFS中看到它们的任何理由。它们是在*.sln文件中声明的。一个项目可以是多个解决方案的一部分。在这些情况下,正确地显示它们是不可能的。 - TcKs
想象一种情况,你有10个项目和5个解决方案与N:M相关。每个解决方案将具有相同的解决方案文件夹,但其中包含不同的项目。如何在不重复项目的情况下公开它?TFS显示文件系统文件夹,而不是Visual Studio插件(解决方案资源管理器是一种插件)添加的虚拟文件夹。您还可以编写自己的插件以在解决方案资源管理器中添加另一种类型的文件夹或组。还有嵌套项,即MyPage.aspx和MyPage.aspx.cs。 - TcKs
显示剩余4条评论
2个回答

11

这应该就是问题所在。根本原因是Visual Studio解决方案文件夹并不是真正的文件夹。

解决方案文件夹似乎只是“虚拟文件夹”,因为它们实际上并没有在文件系统中创建,而在解决方案文件夹中的文件只是位于与.sln文件相同的文件夹中。

您可以在“项目”内部创建真正的文件夹,但不能在解决方案本身中创建。关于此领域的详细信息,您可以参考下面的问题:

源代码控制资源管理器用于管理TFVC中的文件,解决方案文件夹中的文件将显示在源代码控制资源管理器中,并且与.sln文件处于同一级别,但解决方案文件夹本身不会出现在源代码控制资源管理器中并保持文件夹结构。


0

至少在 Visual Studio 2019 中的 C# 解决方案中,您可以管理解决方案中的单个文件夹。

为此,必须使用解决方案资源管理器中的 Switch View 按钮将视图切换为Folder View

enter image description here

点击此处查看详细描述


这是一个“文件夹视图”,显示了磁盘上的文件夹。当您再次选择“解决方案视图”时,*.sln文件中的虚拟文件夹将显示出来。很容易混淆这两个概念,但您可以在原始答案中找到解释。 - undefined

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接