我正在组织一个新项目,我想从命令行创建尽可能多的项目。
我喜欢将我的测试项目放入解决方案文件夹中。但是,命令dotnet sln add
似乎有些受限制。它的参数列表似乎只包含要添加的项目文件列表。
在添加新创建的项目时,有没有办法指定解决方案文件夹(而不是物理文件夹)(在我的情况下是测试项目,但问题更一般)?
答案 0 :(得分:2)
目前无法创建物理结构文件夹,如解决方案结构文件夹
dotnet new <typeproj> --output "physical/domain" --name "domain"
dotnet new <typeproj> --output "physical/service" --name "service"
在使用Visual Studio打开解决方案后,创建“ 物理”解决方案文件夹,并添加之前已经准备好的项目
答案 1 :(得分:1)
我刚刚使用.Net Core 2.2做到了这一点,首先将新项目添加到Tests\UnitTests\UnitTests.csproj
文件夹中,然后从解决方案根目录运行dotnet sln add
。
初始文件夹结构
在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
解决方案文件
答案 2 :(得分:0)
如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> ...
这将添加您指定的所有项目及其名称文件夹到您指定的解决方案。
答案 3 :(得分:0)
dotnet sln yoursolution.sln add pathofyourproject\yourprojectfile.csproj --solution-folder solutionfoldername
如果解决方案文件夹不存在,此命令将创建一个新的解决方案文件夹。在其他情况下,此命令将项目添加到您的解决方案文件夹。