Agent Skills: .NET Build Configuration

.NET build configuration and error handling. Use when building projects, diagnosing build errors, or configuring build options.

UncategorizedID: doubleslashse/claude-marketplace/dotnet-build

Install this agent skill to your local

pnpm dlx add-skill https://github.com/DoubleslashSE/claude-marketplace/tree/HEAD/Plugins/dotnet-developer/skills/dotnet-build

Skill Files

Browse the full folder contents for dotnet-build.

Download Skill

Loading file tree…

Plugins/dotnet-developer/skills/dotnet-build/SKILL.md

Skill Metadata

Name
dotnet-build
Description
.NET build configuration and error handling. Use when building projects, diagnosing build errors, or configuring build options.

.NET Build Configuration

Build Commands

Basic Build

# Build solution/project
dotnet build

# Build specific project
dotnet build src/MyApp/MyApp.csproj

# Build with configuration
dotnet build --configuration Release
dotnet build -c Debug

# Clean build (no incremental)
dotnet build --no-incremental

# Build without restoring packages
dotnet build --no-restore

Build Output

# Specify output directory
dotnet build --output ./artifacts

# Build for specific runtime
dotnet build --runtime win-x64
dotnet build --runtime linux-x64

# Build framework-specific
dotnet build --framework net8.0

Build Configurations

Debug vs Release

<!-- Default configurations in .csproj -->
<PropertyGroup Condition="'$(Configuration)' == 'Debug'">
  <DefineConstants>DEBUG;TRACE</DefineConstants>
  <Optimize>false</Optimize>
  <DebugType>full</DebugType>
</PropertyGroup>

<PropertyGroup Condition="'$(Configuration)' == 'Release'">
  <DefineConstants>TRACE</DefineConstants>
  <Optimize>true</Optimize>
  <DebugType>pdbonly</DebugType>
</PropertyGroup>

Warnings as Errors

<!-- Treat all warnings as errors -->
<PropertyGroup>
  <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
</PropertyGroup>

<!-- Treat specific warnings as errors -->
<PropertyGroup>
  <WarningsAsErrors>CS0168;CS0219</WarningsAsErrors>
</PropertyGroup>

<!-- Suppress specific warnings -->
<PropertyGroup>
  <NoWarn>$(NoWarn);CS1591</NoWarn>
</PropertyGroup>

Multi-Project Solutions

Solution Build

# Build entire solution
dotnet build MySolution.sln

# Build specific projects from solution
dotnet build MySolution.sln --project src/Api

# Parallel build (default)
dotnet build --maxcpucount

# Sequential build
dotnet build --maxcpucount:1

Project Dependencies

<!-- ProjectReference in .csproj -->
<ItemGroup>
  <ProjectReference Include="..\Domain\Domain.csproj" />
  <ProjectReference Include="..\Infrastructure\Infrastructure.csproj" />
</ItemGroup>

Build Error Categories

Compilation Errors (CS)

| Code | Description | Common Fix | |------|-------------|------------| | CS0103 | Name does not exist | Check spelling, add using statement | | CS0246 | Type/namespace not found | Add package reference, add using | | CS1061 | Member does not exist | Check type, update interface | | CS0029 | Cannot convert type | Add cast, fix type mismatch | | CS0120 | Object reference required | Make static or instantiate |

Project Errors (MSB)

| Code | Description | Common Fix | |------|-------------|------------| | MSB3202 | Project file not found | Fix path in ProjectReference | | MSB4019 | Target file not found | Restore packages | | MSB3644 | Framework not installed | Install SDK | | MSB3245 | Reference not resolved | Restore packages, check path |

NuGet Errors (NU)

| Code | Description | Common Fix | |------|-------------|------------| | NU1101 | Package not found | Check package name/source | | NU1103 | Version not found | Check available versions | | NU1202 | Incompatible framework | Update package or framework | | NU1605 | Downgrade detected | Resolve version conflicts |

Package Restoration

# Restore packages
dotnet restore

# Restore with specific source
dotnet restore --source https://api.nuget.org/v3/index.json

# Clear NuGet cache
dotnet nuget locals all --clear

# List packages
dotnet list package
dotnet list package --outdated

Build Diagnostics

Verbose Output

# Detailed build output
dotnet build --verbosity detailed
dotnet build -v d

# Diagnostic output (most verbose)
dotnet build --verbosity diagnostic

# Minimal output
dotnet build --verbosity quiet

Binary Log

# Generate binary log for analysis
dotnet build -bl

# View with MSBuild Structured Log Viewer
# Download from: https://msbuildlog.com/

Clean Operations

# Clean build artifacts
dotnet clean

# Clean specific configuration
dotnet clean --configuration Release

# Force clean (delete bin/obj manually)
rm -rf **/bin **/obj

Common Build Issues

Framework Mismatch

<!-- Ensure consistent framework across projects -->
<PropertyGroup>
  <TargetFramework>net8.0</TargetFramework>
</PropertyGroup>

Missing SDK

# Check installed SDKs
dotnet --list-sdks

# Install specific version via global.json
{
  "sdk": {
    "version": "8.0.100"
  }
}

Locked Files

# Kill processes holding files (Windows)
taskkill /F /IM dotnet.exe

# Kill processes (Linux/Mac)
pkill dotnet

See common-errors.md for detailed error resolutions.