设置多个启动项目
通过 Visual Studio,可以指定在按 F5(在调试的情况下启动)或 Ctrl+F5(在不调试的情况下启动)或者使用工具栏按钮启动应用程序时如何运行多个项目。 这样,你就可以启动多个站点、应用或服务,它们相互依赖,以在调试会话期间或者仅在本地运行和测试时正常运作。
某些项目模板包括已配置为在启动时全部启动的多个项目;例如,“React 和 ASP.NET Core”项目类型包括在启动时都会启动的一个客户端 JavaScript 项目和一个服务器端 ASP.NET Core 项目。
设置多个启动项目
在解决方案资源管理器中,选择解决方案(最高层节点)。
选择解决方案节点的上下文(右键单击)菜单,然后选择“属性”。 “解决方案属性页”对话框随即显示。
展开“通用属性”节点,然后选择“启动项目”。
选择“多个启动项目”选项并设置适当的操作。
多项目启动配置文件
可以设置和保存配置文件,以便在多项目解决方案中以预定义的状态启动特定项目进行调试。 这简化了使用复杂解决方案的过程,提高了调试效率,并可以轻松地在团队成员之间共享配置。
启用多项目启动配置文件
Visual Studio 2022 17.11 及更高版本中提供了多项目启动配置文件。 若要启用或禁用多项目启动配置文件功能,请转到工具 > 选项 > 预览功能,并切换启用多启动配置文件复选框。
创建多项目启动配置文件
打开包含多个项目的 Visual Studio 解决方案。
在解决方案资源管理器中,右键单击解决方案并选择配置启动项目...。
还可以按 Ctrl+Q(快速启动),并在功能搜索中搜索“配置启动项目”。
解决方案属性页对话框随即显示。
在“解决方案属性”页中,单击通用属性选项卡,然后选择配置启动项目。
在配置启动项目部分中,选择多个启动项目单选按钮。
在单选按钮下方,你将看到解决方案中所有项目的列表,以及它们是否设置为在按 F5 时启动,以及每个项目是在调试器下启动还是在没有调试的情况下启动。
可以使用向上和向下箭头来控制项目启动的顺序。
将每个项目的操作设置为启动、启动且不调试或无,并根据要求选择调试目标。
如果要通过将配置文件签入源代码管理存储库中的配置文件来与其他 Visual Studio 用户共享配置文件,请启用共享配置文件复选框。 启动配置文件保存到与解决方案位于同一目录中的扩展名为
.slnLaunch
的 JSON 文件中。 共享配置文件复选框确定配置文件是保存到用户特定的文件(未选中)还是保存到用于源代码管理跟踪的文件,例如在 Git 中的文件(已选中)。以下是
.slnLaunch
文件中的配置文件示例:[ { "Name": "Feature Profile", "Projects": [ { "Path": "src\\OrchardCore.Cms.Web\\OrchardCore.Cms.Web.csproj", "Action": "Start" }, { "Path": "src\\OrchardCore\\OrchardCore.DisplayManagement\\OrchardCore.DisplayManagement.csproj", "Action": "Start" }, { "Path": "src\\OrchardCore\\OrchardCore.Data\\OrchardCore.Data.csproj", "Action": "StartWithoutDebugging" }, { "Path": "src\\OrchardCore\\OrchardCore.ContentManagement.Display\\OrchardCore.ContentManagement.Display.csproj", "Action": "Start" } ] } ]
为每个项目配置启动操作后,单击确定或应用按钮以保存配置文件。 创建的启动配置文件显示在工具栏下拉列表中,允许你选择要调试的配置文件。
使用 Docker Compose
计划使用 Docker Compose 在本地计算机上启动容器化项目时,请使用其他方法(启动配置文件)启动多个项目。
以下示例展示了包含三个项目的解决方案 WebFrontEndA
,这些项目为:一个前端网站项目、一个 Web API 项目和一个 Docker Compose 项目。 以下屏幕截图显示了如何启动三个项目中的两个项目,其中一个在调试的情况下启动,另一个在不调试的情况下启动:
在此示例和任何其他 Docker Compose 方案中,可以选择 docker-compose
作为单个启动项目,但随后需要使用不同的方法来指定要启动的项目或服务。 你将使用 Docker Compose 启动配置文件来确定要启动的服务,以及是否附加调试器,并且 Visual Studio 中有一个不同的对话框用于配置该调试器。 请参阅启动服务子集。 “解决方案属性页”对话框仅用于非容器化解决方案,或者仅在不使用 Docker Compose 管理启动的情况下使用。