============================
CREATE PROJECTS
============================
Create a console app (C#)
Default behavior (creates a folder named MyGame)
dotnet new console -n MyGame
Create in the current directory (NO folder nesting)
dotnet new console -n MyGame -o .
Create a class library (C#)
dotnet new classlib -n MyLibrary dotnet new classlib -n MyLibrary -o .
Create a class library (F#)
dotnet new classlib -lang F# -n MyFSharpLib dotnet new classlib -lang F# -n MyFSharpLib -o .
Create an empty C# project file
dotnet new project -n MyProject dotnet new project -n MyProject -o .
Create an empty solution
dotnet new sln -n MySolution
============================
ADD PROJECTS TO A SOLUTION
============================
Add a project to the solution
dotnet sln add MyProject/MyProject.csproj
Add multiple projects
dotnet sln add src/Engine/Engine.csproj src/Game/Game.csproj
============================
PROJECT REFERENCES
============================
Add a reference from one project to another
dotnet add src/Game/Game.csproj reference src/Engine/Engine.csproj
Remove a reference
dotnet remove src/Game/Game.csproj reference src/Engine/Engine.csproj
============================
ADD/REMOVE PACKAGES (NuGet)
============================
Add a NuGet package
dotnet add package Newtonsoft.Json
Add a package with version specified
dotnet add package Newtonsoft.Json —version 13.0.1
Remove a NuGet package
dotnet remove package Newtonsoft.Json
============================
BUILD / RUN
============================
Build a solution or project
dotnet build
Run the app (if it’s a console/exe project)
dotnet run
Run with explicit project
dotnet run —project MyGame/MyGame.csproj
Clean build outputs
dotnet clean
============================
TEMPLATE LISTS
============================
List installed templates
dotnet new —list
Install a new template pack
dotnet new —install <TEMPLATE_ID>
============================
GLOBAL JSON (set SDK version)
============================
Create global.json for locking SDK version
dotnet new globaljson —sdk-version 8.0.100
============================
PUBLISHING
============================
Publish self-contained (no runtime needed)
dotnet publish -c Release -r win-x64 —self-contained true
Publish framework-dependent
dotnet publish -c Release