Visual Studio解决scheme文件夹作为真正的文件夹

我有一个Visual Studio解决scheme。 目前,这是一个空的解决scheme(=没有项目),我已经添加了一些解决scheme文件夹。

解决scheme文件夹似乎只是“虚拟文件夹”,因为它们并不是在文件系统中创build的,解决scheme文件夹中的文件与.sln文件只是坐在相同的文件夹中。

是否有一个我忽视的设置,告诉Visual Studio将解决scheme文件夹视为“真实”文件夹,即在文件系统中创build文件夹,并将文件移入解决scheme时移动到其中的文件夹中?

编辑:谢谢。 那么要为VS2010提出build议:)

没有特别的设置。 我不认为这是支持。

您可以在解决scheme中的“项目”中创build实际的文件夹,但不能在解决scheme本身中创build。

一个解决方法,实际上performance如预期

  1. 添加一个新的现有的网站到解决scheme。 (我通常会创build一个新的。)
  2. 只要确保它是在您的解决scheme文件夹内创build的。 (我有时甚至创build一个“链接”到外部文件夹,例如在networking共享上的“文档”或“市场营销”,在这种情况下,Git当然会忽略它)。
  3. 确保转到“项目”设置或configurationpipe理器从构build和部署排除此“网站”

完成。 现在,解决scheme资源pipe理器将反映文件系统中的任何更改,反之亦然 (包括子文件夹)。

我(未命中)将其用于规范,文档,PM和一些在团队中共享的DevOps脚本。 它很容易select,在源代码控制中包含什么,以及(如果设置正确)它不会与构build冲突。

我知道这个function并不是针对这个用例的,但是除了可能有误导性的“Project”图标之外,我还没有发现这个function的缺陷。 还有一些使用情况,VS提供的经典(虚拟)解决scheme文件夹适合图片。 你怎么看?

萨拉·福特贡献了一个macros来补充这个。 在Visual Studio 2010中,如果您打开了您的macros浏览器,您将看到一个名为“GenerateSlnFolderOnDirStructure”的macros。 这将自动创build解决scheme文件夹并添加文件。

我自己想要这个function几次,但是在一天结束的时候,你真的想要这个function。 将您的解决scheme(文件)视为Web应用程序的根,并将解决scheme文件夹视为虚拟目录(从字面上和function上)。 Web虚拟目录的内容可能完全位于不同的服务器上。 在Visual Studio混淆解决scheme文件夹的概念是让您在文件夹内创build新的文件。 添加内容时,应始终“添加现有” 。 当你添加现有的,它创build一个链接到文件的源位置。

但是至于你不希望解决scheme文件夹行为像“物理”文件夹的原因是因为您的解决scheme布局可能不一定使用相同的约定作为您的源代码pipe理布局。 解决scheme文件夹允许您自定义项目的层次结构,从而可以将项目和项目按任意方式组合在一起,然后决定不喜欢并再次更改,而不必经历移动源代码pipe理项目的噩梦围绕和刺激你的团队的其他人。

不,它不被支持。 如您所怀疑的,解决scheme文件夹只是.sln文件中的虚拟子条目,与文件系统无关。

Visual Studio不支持这个。 我做了一个扩展,虽然VS2013做了类似的事情。 它将解决scheme文件夹映射到硬盘驱动器上的物理文件夹,尽pipe映射是一种方式(从硬盘驱动器到解决scheme)。 这意味着解决scheme文件夹的内容将反映硬盘文件夹的内容,而不是其他方式。

有了这个,扩展可能仍然有用。 它支持将解决scheme文件夹映射到物理文件夹,基于正则expression式过滤文件和目录,以及记住.sln文件中的映射。 属性是非侵入性的,所以没有扩展名的开发者仍然可以打开sln而不受影响。

托pipe在视觉工作室画廊上: https : //visualstudiogallery.msdn.microsoft.com/69e19ea6-4442-4cb6-b​​300-044dd21f02bd

编辑:上传到bitbucket。 现在开源。 MIT许可证。 https://bitbucket.org/LSS_NorthWind/physical-solution-folders

文件夹到解决scheme文件夹通过CeciliaWirén – CeciliaSHARP

删除添加几个文件到解决scheme文件夹的麻烦。 只需使用解决scheme的上下文菜单,在创build新解决scheme文件夹的选项下面,您现在可以find“将文件夹添加为解决scheme文件夹”。 这将创build一个与您select的名称相同的解决scheme文件夹,并将该文件夹内的项目添加到解决scheme文件夹。 这不会移动磁盘上的文件。

注:是的这是可能的,你可以创build一个文件夹的根,但它有点棘手….

通过做一些额外的努力,你可以做到这一点如何? 让我们按照步骤 –

  • 1 – 创build文件夹例如:“新文件夹”在根目录(你的.sln文件所在的地方)。
  • 2.复制并粘贴文件夹中的项目。
  • 3.go到你的sln文件,find移动的项目,并在移动项目的地址追加新的文件夹\。
  • 4.保存sln文件。
  • 5.打开你的项目,并在git中提交仓库…
  • 6.在新的位置上取得资料库。

    你完成了…

如果仍然无法看到您的文件夹—–

  • 1.添加解决scheme文件夹xyz。
  • 2.打开sln文件并使用文件夹名称更改该文件夹名称。

恭喜你完成了..

如果您遇到任何问题,请写信给我。

如下所示,解决scheme下创build的文件夹将是虚拟的。 也许这可能被称为解决方法,但是您可以在添加新项目/项目之前或之后在磁盘上物理创build文件夹,Robert应该是您父亲的兄弟姐妹。

ps-仔细看,也许我应该解释“bob的你的叔叔”是指你的罚款/sorting。

您可以通过为Visual Studio项目文件select“添加新filter”来添加实际文件夹。 您也可以在现有文件夹下执行“添加新filter”。 一旦文件夹被创build,重新命名并添加源文件或头文件或适合您的项目。 这是我知道的一种方式,可以让我们通过Visual Studio IDE创build真实的文件夹。

我有一个解决方法(这不是很好,但它的工作原理)。

  1. 在您的解决scheme中创build一个文件夹(即“Contoso”)
  2. 右键单击解决scheme,然后单击“在解决scheme资源pipe理器打开文件夹”
  3. 在解决scheme目录中创build物理文件夹(即“Contoso”)
  4. 复制/创build物理文件夹中的文件。
  5. 将文件拖到解决scheme资源pipe理器中的虚拟文件夹中。

这不是很好,因为你将需要手动维护文件引用,但它适用于我。

创build“解决scheme文件夹”。 这将创build逻辑文件夹,但不是物理文件夹。 右键单击解决scheme文件夹并打开一个新的项目对话框。 但在单击“确定”之前,必须将项目位置更改为所需的物理文件夹,然后VS将创build它并将项目放入其中。