.NET Core:如何从命令行创建解决方案文件夹

问题描述 投票:0回答:4

我正在组织一个新项目,我想从命令行创建尽可能多的项目。

我喜欢将我的测试项目放入解决方案文件夹中。然而,命令

dotnet sln add
似乎有些受限。它的参数列表似乎只包含要添加的项目文件列表。

添加新创建的项目(在我的例子中是测试项目,但问题更普遍)时,有没有办法指定解决方案文件夹(而不是物理文件夹)?

.net-core
4个回答
14
投票

从此 Microsoft 文档

dotnet sln yoursolution.sln add pathofyourproject\yourprojectfile.csproj --solution-folder solutionfoldername

如果解决方案文件夹不存在,此命令将创建一个新的解决方案文件夹。在其他情况下,此命令将项目添加到您的解决方案文件夹中。


8
投票

我刚刚使用 .Net Core 2.2 完成了此操作,首先将一个新项目添加到

Tests\UnitTests\UnitTests.csproj
文件夹,然后从解决方案根目录运行
dotnet sln add

初始文件夹结构

Initial Folder Structure

UnitTest.csproj
内添加Tests\UnitTests

从包含

TestMvcCore2.sln

的文件夹中运行
dotnet new classlib -o .\Tests\UnitTests -n UnitTests

UnitTest.csproj
添加到
TestMvcCore2.sln

从包含

TestMvcCore2.sln

的文件夹中运行
dotnet sln add .\TestMvcCore2.sln  .\Tests\UnitTests\UnitTests.csproj

在 Visual Studio sln

 中创建一个 Tests

解决方案文件

enter image description here


7
投票

目前不可能,您需要像解决方案结构文件夹一样创建物理结构文件夹

dotnet new <typeproj> --output "physical/domain" --name "domain"

dotnet new <typeproj> --output "physical/service" --name "service"

使用 Visual Studio 打开解决方案后,创建“physical”解决方案文件夹并添加之前已经准备好的项目


2
投票

正如Microsoft Docs中提到的,如果你想创建新的解决方案,你必须编写

dotnet new sln
。此命令将在当前目录中创建一个以当前目录名称命名的解决方案文件。另外,您可以通过
dotnet new sln -o <SOLUTION_NAME>
指定输出解决方案文件的名称。 这还将创建一个具有您指定名称的文件夹。要将项目添加到此解决方案,请在命令提示符中输入:
dotnet sln <YOUR_SOLUTION_NAME> add <PROJECT_YOU_WANT_TO_ADD> <PROJECT_YOU_WANT_TO_ADD> <PROJECT_YOU_WANT_TO_ADD> ...
这会将您指定的所有项目及其文件夹添加到您指定的解决方案中。

© www.soinside.com 2019 - 2024. All rights reserved.