首页 文章

Visual Studio Solutions文件夹作为真正的文件夹

提问于
浏览
92

我有一个Visual Studio解决方案 . 目前,它是一个空的解决方案(=没有项目),我添加了一些解决方案文件夹 .

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

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

Edit: 谢谢 . 要为VS2010提出建议然后:)

13 回答

  • 0

    没有特别的设置 . 我认为它不受支持 .

    您可以在解决方案中的“项目”中创建真实文件夹,但不能在解决方案本身中创建 .

  • 33

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

  • 2

    a workaround, that actually behaves as expected .

    • 在解决方案中添加 NewExisting Web Site . (我通常会创建一个新的 . )

    • 当然,请确保Git忽略了's created inside your solution folder. (I sometimes even create a 2772252 to an external folder, e.g. ' Docs ' or '营销' on a network share. In that case it' . )

    • 确保转到"Project"设置或配置管理器 exclude this "Web Site" from Build and Deploy

    Done. Now Solution Explorer will reflect any change in the file system and vice versa (包括子文件夹) .

    我(小姐)将它用于规范,文档,PM和团队内共享的一些DevOps脚本 . 它很容易选择,包括在源代码控制中的内容,以及(如果设置正确)它与构建不冲突 .

    我知道该功能不适用于该用例,但除了可能具有误导性的“项目”图标之外,我还没有发现该黑客的任何短缺 . 并且仍然存在VS提供的经典(虚拟)解决方案文件夹的用例,适合图片 . 你怎么看?

  • 15

    在Visual Studio 2017中,单击“解决方案资源管理器”窗口中的"Solutions and Folders"图标 . 此按钮从虚拟"solution"视图切换到与文件系统上的文件夹和文件的布局相匹配的"source view" . 添加新文件夹时,将在预期位置物理创建该文件夹 .
    solutions and folders
    .

  • 3

    萨拉福特贡献了一个宏来增加这一点 . 在Visual Studio 2010中,如果打开宏资源管理器,您将看到一个名为“GenerateSlnFolderOnDirStructure”的宏 . 这将自动创建解决方案文件夹并添加文件 .

  • 1

    不,它不受支持 . 如您所料,解决方案文件夹只是.sln文件中的虚拟子条目,与文件系统无关 .

  • 8

    Folder To Solution Folder By Cecilia Wirén - CeciliaSHARP

    删除将几个文件添加到解决方案文件夹的麻烦 . 只需使用解决方案的上下文菜单,然后在创建新解决方案文件夹的选项下方,您现在可以找到“将文件夹添加为解决方案文件夹” . 这将创建一个与您选择的名称相同的解决方案文件夹,并将该文件夹内的项目添加到解决方案文件夹中 . 这不会移动磁盘上的文件 .

  • 0

    Note: Yes this is possible you can create a folder on root but its lil bit tricky....

    通过额外的努力你可以做到如何?让我们按照步骤 -

    • 1 - 创建文件夹例如:root上的“ newfolder ”(.sln文件所在的位置) .

    • 2.将项目复制并粘贴到文件夹中 .

    • 3.go到您的sln文件并找到已移动的项目并在移动的项目地址中追加newfolder \ .

    • 4.保存sln文件 .

    • 5.打开你的项目并在git中提交存储库......

    • 6.在新的位置取出存储库 .

    你做完了......

    如果你仍然无法看到你的文件夹-----

    • 1.添加解决方案文件夹xyz .

    • 2.打开sln文件并使用文件夹名称更改该文件夹名称 .

    恭喜你完成..

    如果您遇到任何问题,请写信寻求帮助..

  • 37

    我自己想要这个功能几次,但是在一天结束的时候,你真的希望能够做到这一点 . 将您的解决方案(文件)视为Web应用程序的根,并将解决方案文件夹视为虚拟目录(从字面上和功能上) . Web虚拟目录的内容可以完全在不同的服务器上 . Visual Studio混乱的解决方案文件夹概念是允许您在文件夹中创建新文件 . 添加内容时,您应该始终 "Add Existing" . 添加现有内容时,会创建指向文件源位置的链接 .

    但是,由于您不希望解决方案文件夹的行为类似于“物理”文件夹,因为您的解决方案布局可能不一定使用与源控件布局相同的约定 . 解决方案文件夹允许您自定义项目的层次结构,以便您可以进行分组项目和项目以你喜欢的方式组合在一起,然后决定你不喜欢它并再次改变它,而不必经历动态源控制项目的噩梦并激怒团队的其他成员 .

  • 1

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

    除此之外,扩展可能仍然有用 . 它支持将解决方案文件夹映射到物理文件夹,基于正则表达式过滤文件和目录,以及记住.sln文件中的映射 . 属性是非侵入性的,因此没有扩展的开发人员仍然可以打开sln而不会受到影响 .

    在视觉工作室画廊举办:https://visualstudiogallery.msdn.microsoft.com/69e19ea6-4442-4cb6-b300-044dd21f02bd

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

  • 3

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

    ps-仔细看看也许我应该解释“bob是你的叔叔”意味着你的罚款/排序 .

  • 2

    您可以通过为Visual Studio项目文件选择“添加新过滤器”来添加实际文件夹 . 您还可以在现有文件夹下执行“添加新过滤器” . 创建文件夹后,重命名该文件夹并添加源文件或头文件或适合您的项目 . 这是我知道的一种方式,它允许我们通过Visual Studio IDE创建真正的文件夹 .

  • 3

    I have a bit of a workaround for this (it's not great, but it works).

    • 在解决方案中创建一个文件夹(即"Contoso")

    • 右键单击解决方案,然后单击"Open Folder in Solution Explorer"

    • 在解决方案目录中创建物理文件夹(即"Contoso")

    • 复制/创建物理文件夹中的文件 .

    • 将文件拖到解决方案资源管理器中的虚拟文件夹中 .

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

相关问题