Using the command line
With .NET 5, we got a super powerful tool called dotnet.exe
. Developers that have used .NET Core before will already be familiar with the tool, but with .NET 5, it is no longer exclusively for .NET Core developers.
It can do many things Visual Studio can do, for example, creating projects, adding and creating NuGet packages, and much more. In the following example, we will create a Blazor Server and a Blazor WebAssembly project.
Creating projects using the command line
The following steps are to demonstrate the power of using the command line. We will not use this project later in the book, so if you don’t want to try it, go ahead and skip this section. To create a solution with Blazor server and Blazor WebAssembly projects like the one we just did, we can run this command:
dotnet new blazorserver -o BlazorServer
dotnet new blazorwasm -o BlazorWebAssembly --pwa –hosted
Here, dotnet
is the command. To create a new project, we use the new
parameter.
blazorserver
is the template’s name, and -o
is the output folder (in this case, the project will be created in a subfolder called BlazorServer
).
The second line uses the template blazorwasm
that created a Blazor WebAssembly project, and it uses the pwa
flag to make it a Progressive web app and the hosted flag to get an ASP.NET hosted backend.
We also need to create a solution for our projects, and we can do that from the command line by using the template sln
.
dotnet new sln --name MyBlog
We also need to add the projects we created, which are one Blazor Server project and 3 Blazor WebAssembly projects.
dotnet sln MyBlog.sln add ./BlazorWebAssembly\Server\BlazorWebAssembly.Server.csproj
dotnet sln MyBlog.sln add ./BlazorWebAssembly\Client\BlazorWebAssembly.Client.csproj
dotnet sln MyBlog.sln add .\BlazorWebAssembly\Shared\BlazorWebAssembly.Shared.csproj
dotnet sln MyBlog.sln add .\BlazorServer\BlazorServer.csproj
The dotnet
command is super powerful; for some scenarios, it makes sense to use it. I mostly use the UI in Visual Studio, but it’s important to know we have the dotnet
tool we can use.
NOTE: THE .NET CLI
The idea is that you should be able to do everything from the command line. If you prefer working with the command line, you should check out the .NET CLI; you can read more about the .NET CLI here: https://docs.microsoft.com/en-us/dotnet/core/tools/.
Let’s go back to the Blazor template, which has added a lot of files for us. In the next section, we will look at what Visual Studio has generated for us.