VisualStudioCode中用dotnet命令创建多个ASP.NET Core 项目、类库、控制台程序,并添加应用间的引用

时间:2023-01-27 16:50:38

一、准备工作

首先安装VisualStudioCode并且可以使用。

1、首先新创建空的MyApps文件夹,作为项目主目录,下面将在这个文件夹中创建多个web应用程序、类型、控制台程序等。

2、打开VisualStudioCode软件,选择“File”->"Open Folder",在弹出框中选择上述创建的文件夹“MyApps”后。

3、使用快捷键 ”CTRL + ~ “ 组合键后就可以使用dotnet命令(当然也可以直接打开cmd,切换到MyApps目录,使用dotnet命令),如下图:

VisualStudioCode中用dotnet命令创建多个ASP.NET Core 项目、类库、控制台程序,并添加应用间的引用

二、创建解决方案文件,即sln文件

使用命令“dotnet new sln”,创建一个解决方案以方便管理该解决方案下的多个项目,如下图:

VisualStudioCode中用dotnet命令创建多个ASP.NET Core 项目、类库、控制台程序,并添加应用间的引用

三、asp.net core mvc项目

1、在MyApps中创建子文件夹”app“,用以存放web应用项目;

2、然后切换到app目录下;

3、使用命令”dotnet new mvc -o admin“,创建名为”admin“的asp.net core mvc项目;

4、使用命令“dotnet sln MyApps.sln add app\admin\admin.csproj”,将刚创建的admin项目添加到解决方案中(如果移除,把命令中的add改为remove即可);

操作如下图:

VisualStudioCode中用dotnet命令创建多个ASP.NET Core 项目、类库、控制台程序,并添加应用间的引用

注意:将admin项目添加到解决方案中,记得目录切回根目录。

还可以按照上面的操作再创建多个mvc项目,如admin2,admin3……

四、创建asp.net core 类库

1、在MyApps中创建创建子文件夹classlibs;

2、切到classlibs目录下;

3、使用命令“dotnet new classlib -o common”创建类库;

4、切回根目录,把类库添加到解决方案中;

操作如下图:

VisualStudioCode中用dotnet命令创建多个ASP.NET Core 项目、类库、控制台程序,并添加应用间的引用

五、创建asp.net core 控制台程序

如上面操作创建consoles文件夹,再创建asp.net core 控制台程序,再添加到解决方案中,如下图:

VisualStudioCode中用dotnet命令创建多个ASP.NET Core 项目、类库、控制台程序,并添加应用间的引用

 六、添加本地项目引用

比如:admin项目引用common类型

方法一:

使用命令“dotnet add app\admin\admin.csproj reference classlibs\common\common.csproj”,注意项目路径,如下图:

VisualStudioCode中用dotnet命令创建多个ASP.NET Core 项目、类库、控制台程序,并添加应用间的引用

执行命令后,admin.csproj文件多了下面代码:

<ItemGroup>
<ProjectReference Include="..\..\classlibs\common\common.csproj" />
</ItemGroup>

移除引用,用命令“dotnet remove app\admin\admin.csproj reference classlibs\common\common.csproj”即可。

方法二:

直接打开admin项目的admin.csproj文件,添加下面几行代码

<ItemGroup>
<ProjectReference Include="..\..\classlibs\common\common.csproj" />
</ItemGroup>

七、添加第三方引用

比如在common类型中引用SQLite:

dotnet add classlibs\common\common.csproj package Microsoft.EntityFrameworkCore.Sqlite

比如引用dapper:

dotnet add classlibs\common\common.csproj package dapper

注:

可以用 dotnet build 编译整个项目