C# (.NET)
Debugger: netcoredbg (Samsung, MIT license) Status: Stable .NET version: .NET Core 3.1+ / .NET 5+
Prerequisites
Download and install netcoredbg from the releases page and place the netcoredbg binary in your PATH.
Verify: netcoredbg --version
Quick Start
bash
# Debug a .NET program
krometrail launch "dotnet run" --break Program.cs:42
# Debug with a specific project
krometrail launch "dotnet run --project src/MyApp" --break src/MyApp/OrderService.cs:147
# Debug tests
krometrail launch "dotnet test" --break src/MyApp/OrderService.cs:147
# Debug a specific test
krometrail launch "dotnet test --filter OrderServiceTests.TestGoldDiscount" \
--break src/MyApp/OrderService.cs:147Conditional Breakpoints
C# expressions work directly in conditions:
bash
krometrail break "OrderService.cs:147 when discount < 0"
krometrail break "OrderService.cs:147 when user.Tier == \"Gold\""Inspecting .NET Objects
The viewport renders .NET objects using their property values:
Locals:
discount = -149.97
order = Order { Id=482, Total=149.97, Tier=Gold }
items = List(3): [Item { Price=49.99, Qty=3 }, ...]
result = nullTips
- Build with debug configuration (
dotnet buildwithout--configuration Release) to include debug symbols - For ASP.NET Core: launch with
dotnet run— the adapter handles attaching before requests are served debug_evaluateaccepts C# expressions including LINQ queries- netcoredbg is open-source (MIT) and does not require a Visual Studio license