将现有目录添加到解决方案资源管理器中的目录


105

我想将一个现有目录添加到解决方案资源管理器中的目录,但是每当我右键单击该目录并选择时Add => Existing Item,我只能添加单个文件,而不能添加目录。

如何在解决方案资源管理器中的项目内的目录中添加现有目录?


您是否尝试单击添加文件夹并将其命名为磁盘上的目录?
rene 2012年

9
试图将文件夹从Windows资源管理器拖放到Visual Studio解决方案窗口中?来源:stackoverflow.com/questions/392473/...
克里斯-

我现在有了!这项工作很好,谢谢。
2012年

@Chris您应该真的将此作为答案发布,因为..er ...这是哈哈
JMK 2013年

@Johnny_D 7票的答案虽然更有帮助。
2013年

Answers:


82

将文件夹从Windows资源管理器拖放到Visual Studio解决方案窗口中:)

来源在这里

或简单地复制并粘贴到解决方案资源管理器中。


拖放释放文件夹结构(VS12 Express)
Opsenas

1
@Chris:从资源管理器到解决方案资源管理器之间没有拖放。你在说什么?
ajeh

@ajeh如果您在Visual Studio旁边打开了一个资源管理器窗口,请从资源管理器中选择一个文件,然后将其拖放到Visual Studio解决方案资源管理器窗口中
Chris

177

单击解决方案资源管理器顶部的“显示所有文件”按钮,然后右键单击所需的文件夹,然后选择“包含在项目中”。

VS2012解决方案资源管理器中的“显示所有文件”按钮


1
我找不到此按钮。是因为我只有Express版吗?
Marcel

2
据我所知,VS 2012中不再显示“显示所有文件”按钮。但是,如果我输入错误,请更正我,因为我错过了此功能。编辑:至少,对于网站项目不存在。
克莱

1
嗨,克莱。正如我所看到的,“显示所有文件”按钮在VS2012中存在,但是在网站项目中不存在。我对您的建议是:如果需要此功能,请不要使用网站项目
Radenko Zec

2
我知道这有点晚了,但是如果您的目录(文件夹)已经在文件系统上,并且您想将其添加到您的项目中(如上面的注释中所述),那么只需打开文件即可。资源管理器(类似于Windows中的..打开文件夹),然后将其拖放到解决方案资源管理器窗格中的所需文件夹上。我只是这样做了,所以它可以工作,因为我既没有“显示所有文件”,又希望将“网站项目”用于我的项目。
rhaag71

16
对于那些找不到按钮的人,请注意,Solution Explorer顶部的按钮会根据所选内容(至少在VS2012中)而变化。确保已选择项目。
Jon-Eric

10

VS 2012似乎在“解决方案文件夹”之间进行了区分,“解决方案文件夹”只是包含其他解决方案文件夹或项目文件夹的文件夹。拖放(使用我的设置)仅对项目文件夹有效,而对解决方案文件夹无效。如果添加新的解决方案文件夹,则计算机上没有任何反应。如果将机器文件夹拖放到主解决方案中,它将拒绝接受它。如果将文件夹拖放到“解决方案文件夹”,则会收到一条错误消息,提示无法完成。


4

其他一些答案缺少重点:如果该文件夹不在解决方案的项目中,则无法添加该文件夹

这是解决方案:

1)将新文件夹添加到sln-并不关心该文件夹已存在于磁盘上,因为这是sln中的虚拟文件夹

2)使用“添加现有文件”将文件添加到文件夹


我对您有个建议:避免让您的回答听起来像是评论。您最初的答案是“我只需要添加评论...”,这对我来说应该是评论而不是答案。以这样的行开始您的答案可能会使其标记为“ Not An Answer”。在我看来,您的答案确实是在尝试回答该问题,因此我对其进行了编辑,以防止出现NAA标志。
skrrgwasme 2014年

它的确回答了这个问题,但是,由于我已经发展了35年,我的英语很钝,而且直言不讳,除了这段代码,即使不理解,它也永远不会受到伤害,只是行不通
海军上将

2

当处理由于某种原因已删除的解决方案级别文件夹,并且现在需要重新添加该文件夹时,请在文本编辑器(如notepad ++)中打开.sln文件。

在如下所示的部分中找到您的“ FolderName” ...

Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "NewFolder1", "NewFolder1", "{73ED84FC-F250-4CCC-B267-34CEB67F2883}" EndProject

仅将遇到问题的特定项目/文件夹从“项目”删除为“ EndProject”。

在VS2012中,您可能会收到一条消息,指出您的解决方案已被外部来源修改。选择选项“放弃”外部更改。最后,添加您的解决方案级别文件夹,并将您的项目作为现有项目添加到该文件夹​​,然后根据您的喜好将其拖放/复制或粘贴。


我收到了否决票,但先前的回答(其中有些带有赞成票)解释说,许多解决方案,尤其是带有对号标记的答案的解决方案,在尝试获取“文件夹已存在”消息的人时都无济于事添加解决方案文件夹。我必须自己解决该问题的解决方案,然后将其发布在这里以帮助其他任何人……
Jabare Mitchell 2014年

1

展开菜单栏中的“项目”项,然后选择“显示所有文件”。然后,在“解决方案资源管理器”中找到您要添加的文件夹(当前不包含的文件夹将为浅灰色,并带有虚线轮廓,而不是通常的纯色图标),右键单击所需的文件夹,然后选择“包含在项目中”

完成后,再次从“项目”菜单中选择“显示所有文件”以返回常规视图。

(这与Radenko Zec的答案非常相似,但不需要“显示所有文件”按钮已经出现在工具栏中。我只是将其保留为对他的答案的回答,但我目前没有这个声誉发表评论。)


我相信您可能只是浏览了原始帖子,因为它确实提供了答案。但是,我已编辑帖子以使答案更加清晰。我不确定您为什么要通知我,以便对帖子发表评论,因为我在回答中明确指出了这一点,作为评论的一部分,该评论解释了我将补充性回答作为新帖子留给我,以便评论这些帖子而不是因为该声誉限制而发表评论。但是,谢谢您的反馈!
Daetrin 2015年

只要答案被标记为不正确,该文本就会自动发布。除此之外,编辑使其更加清晰。
Davidmh'3

1

对于那些有预感的人可以完成但无法做到,请注意: 至少在“解决方案资源管理器”中将文件夹或文件拖到项目名称的名称上

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.