Visual Solution Explorer中的实际文件夹?

时间:2011-12-11 22:28:17

标签: visual-studio directory

MS Visual Studio有解决方案资源管理器,我可以在其中查看所有项目文件,我还可以创建过滤器,这些过滤器就像文件夹一样,可以将它们保存在组中。问题是 - 我希望我的文件在视觉和物理上划分为磁盘组。但我不想在Visual和我的磁盘上同时应用每次更改两次。有没有办法在Visual Solution Explorer中显示实际的文件夹,我将文件保存在磁盘上(并且没有 - “显示所有文件”不会这样做,我刚刚检查过了)?

3 个答案:

答案 0 :(得分:6)

否 - SE和文件系统拥有结构/层次信息的独立副本。

我通常禁用过滤器并将文件放在我想要的位置,这样两个结构默认保持同步(事实上,如果你想要任何类型的源代码组织,任何其他方式看起来都很疯狂 - 我总是组件的组文件inot单独的文件夹。)

然后(禁用过滤器)...

如果您在解决方案资源管理器中创建文件夹,并使用该文件夹中的上下文菜单“添加新项目...”或“添加现有项目”,则磁盘结构将反映解决方案资源管理器(现有项目被复制而不是而不是从它们当前所在的位置引用来确保这一点,如果你添加到错误的SE文件夹,这可能导致文件的旧副本留在你的项目周围)。否则,通常只有当你“添加为链接”时,VS才会将项目放在SE中的不同文件夹中,而不是磁盘上显示的内容。

为了整理,最简单的方法是(以后制作备份副本):

  • 打开解决方案和文件资源管理器并手动“区分”它们。任何“错误”的文件都应该从SE中删除,移动到正确的磁盘位置,然后使用正确的SE文件夹的上下文菜单添加到SE
  • 如果没有太多文件夹,更简单的方法是从解决方案资源管理器中删除所有文件,然后将它们(一次一个文件夹)添加回项目,确保您创建正确的文件夹名称转到,并从每个文件夹的上下文菜单中添加。通过从头开始重建SE,您可以相当快速地同步这两个布局,这通常比尝试找出差异所在的位置更容易。

一旦他们同步,只使用SE管理文件,并小心使用正确文件夹中的上下文菜单添加项目。如果你在磁盘上移动东西,你就会破坏链接。

答案 1 :(得分:3)

如果单击“显示所有文件”,则会将解决方案资源管理器从显示文件的虚拟过滤器切换到文件的物理过滤器。

答案 2 :(得分:0)

通过过滤器,我认为您指的是解决方案文件夹。这些是与文件系统无关的虚拟文件夹。我做的一个技巧是扔掉一个项目。添加到项目文件夹的项目可以保持其关系这是一个黑客,但它的工作原理。如果有人知道这种做法不那么苛刻,我也很想知道。