在Visual Studio中查看多个项目/解决方案

221

我是Visual Studio的新手,正在尝试编写一些Windows服务。我已经创建了两个解决方案,希望能够同时查看这两个解决方案,而不必点击“文件”->“最近的项目”来来回切换。

理想情况下,这可以在解决方案浏览器中完成,只需嵌套这些解决方案和项目即可。但是在那里我只能查看一个解决方案/项目。

是否有任何方法可以在Visual Studio中查看多个解决方案/项目?


1
如果你只是想更快地获取“文件>最近使用的项目和解决方案”,你可以创建一个自定义工具栏或菜单条目。打开“工具>自定义”,切换到“命令”选项卡,点击“添加命令”,选择“文件>最近使用的项目列表”。把它放在任何你想要的地方。 - Livven
项目可能存在,但在同一解决方案资源管理器中无法找到解决方案。必须启动一个新实例。但是,在 Mac 版的 Visual Studio 中支持此功能。 - Nithin B
12个回答

224

Visual Studio的设计理念是:一个解决方案对应一个Visual Studio (VS)实例。

除了在同一个VS实例中切换不同的解决方案,你还可以打开另一个VS实例并使用该实例打开其他的解决方案。此外,你也可以在同一解决方案中拥有多个“项目”,从而同时查看多个项目。


20
明白了,简而言之,你可以在解决方案中嵌套项目,但不能同时打开多个解决方案。谢谢。 - Mike
一个解决方案有点像Eclipse中的工作区概念 - 你不能在同一实例中加载两个。 - rbaleksandar
Visual Studio 的 Mac 版本支持在同一解决方案资源管理器中打开多个解决方案。 - Nithin B
如果我有多个项目,并且有多个main()方法,我该如何选择要编译的方法? - user12725052
1
@5Daydreams 为什么不进行全部编译呢?有了优化,重新编译未更改的内容也无所谓。如果您是指要运行哪些内容,那就是另一回事了。在绿色三角旁边点击即可运行,这里还有一个下拉菜单。 - Hobbamok

164

有一种更简单(但不是很明显)的方法:在任务栏上右键点击Visual Studio图标,然后在弹出菜单中右键点击应用程序名称,最后点击“打开”。Windows将会打开另一个实例,在其中你可以打开另一个解决方案。


4
你可以像打开其他程序一样打开另一个实例。在Windows <= 7上,按照正常方式打开即可。在 Windows >= 8上,你需要按住Shift键或切换全局注册表设置来打开。 - Bob
38
如果已经有Visual Studio实例在运行,可以在任务栏上中键点击VS图标来启动一个新的实例。将常用解决方案固定到Jump List上也很方便。右键单击图标并选择其中一个将会在新实例中打开它,而不是在当前实例中打开。 - Jay Carlton
2
在OSX上,右键单击Dock中的VS图标,然后选择“新实例”。 - user1114

23

如果您有两个单独的解决方案,那么在同一个VS实例中无法同时查看它们。但是,您可以打开多个VS实例并在它们之间切换。

另一种方法是将一个解决方案中的项目导入到另一个解决方案中,从而将所有项目放入一个解决方案中。您可以按照以下步骤操作:

  1. 在“解决方案资源管理器”中,选择要导入项目的解决方案。右键单击,选择上下文菜单中的“添加”->“现有项目”。

  2. 在文件选择器中,找到要导入的项目文件(以.XXproj结尾,其中XX是您正在使用的语言)。

  3. 单击“打开”,完成!您的项目已导入。


我该如何打开多个VS实例? - Sasuke Uchiha
@SasukeUchiha 在任务栏图标上右键单击,然后在上下文菜单中单击Visual Studio 20xx,其中xx表示您拥有的任何Visual Studio版本,例如2012、2013、2017、2019。 - Brian Driscoll

19

有一种方法可以在一个Visual Studio实例中存储多个解决方案。

请尝试以下步骤:

  1. 文件 > 打开 > 项目/解决方案
  2. 这将打开“打开项目”窗口,在底部注意到选项,选择添加到解决方案

Add to Solution

  1. 然后选择要添加的文件并单击“打开”
  2. 这将把解决方案添加到您的项目中。 您仍然无法在单个Visual Studio实例中运行同一项目,但是您可以将所有代码组织在一个地方。

注意: 这适用于Visual Studio 2013 Professional


1
这是 OP 原始问题的正确答案:在 VS Solution Explorer 中同时查看多个解决方案。经验证,此方法在 VS 2017 中仍然有效。 - mdisibio
这个问题有两部分解决方案和项目。对于解决方案,这样做是不正确的。它会将第二个解决方案项目添加到第一个解决方案中。因此修改第一个解决方案是错误的。最近我认为这个功能在Mac版本可用,但在Windows版本中不可用。 - Nithin B
在VS 2022专业版中似乎缺少了这个选项。 - undefined

10

只需右键单击Visual Studio图标,然后从Windows 8底部出现的上下文工具栏中选择“新建窗口”,将启动Visual Studio的新实例,然后您可以打开第二个项目。


这是分类的,不是他们要求的。 - n4rzul

5
您可以创建一个新的空解决方案,并将不同的项目添加到其中。

3

不知道这是否有用,但如果想在不通过项目树导航的情况下(如多窗口)处理多个项目,可以尝试在另一个虚拟桌面中打开VS(至少对于Windows 10是可能的),方法为按住Ctrl + win + D。 然后打开另一个VS Studio并在其中打开其他项目。您可以通过Ctrl + win +箭头键(左/右)在项目之间切换。


3

您可以在一个 Visual Studio 实例中拥有多个项目。VS 解决方案的目的是将您想要处理的所有项目集中在一个地方,因此您不能在一个实例中拥有多个解决方案。您需要分别打开每个解决方案。


尝试在数百个项目中使用此方法,你会发现解决方案的构建时间趋近于无穷大。这也与Git处理多个项目的源代码控制的理念相冲突。这是一个庞大的噩梦。 - n4rzul

2
两种方法可以考虑:
  1. 打开另一个Visual Studio窗口,并在其中打开第二个解决方案。

  2. 最好将现有的项目添加到一个解决方案中,只需右键单击并添加现有项目,然后导航到项目文件(csproj)。例如:C:\Users\User\Documents\Visual Studio 2012\Projects\MySqlWindowsFormsApplication1\MySql Windows Forms Project1\MySql Windows Forms Project1.csproj。在这种第二种方法中,您可能需要设置多个启动项目,即对于具有客户端-服务器应用程序或具有依赖项的应用程序。要执行此操作,请选择解决方案,然后转到:Project>>Properties>>Startup Project>>选择Multiple Startup Projects并设置操作为Start。调试时,所选的作为启动的项目将运行。

  3. 出于兴趣,您可以打开多个解决方案窗口以同时查看不同的项目。http://www.schwammysays.net/visual-studio-2012-tip-multiple-solution-explorers/


2

经过长时间的研究和不同的实验,“适用于Mac用户”的最简单方法是创建一个脚本:

open -a "Visual Studio" \
"path to first sln" \
"path to second sln" \
...

:D


脚本自动化再次拯救了一天 :p。这是为Windows做的(单个批处理脚本包含多个解决方案的多个命令,如此类似 https://dev59.com/L1cP5IYBdhLWcg3wRX9h#bBvsnYgBc1ULPQZF7Wfw)。 - gawkface

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