.sln to .slnx: One Command, One CI Catch (.NET 10)

DevLab

DevLab

8 views

Your .sln file is the merge conflict nobody owns. .NET 10 quietly replaced it, and your CI pipeline might be the last to find out.

This video migrates a real .NET solution from the legacy .sln format to the new XML-based .slnx format using dotnet sln migrate. You’ll see the diff, prove that build speed doesn’t change, and fix the CI failure that hits build agents running an SDK older than 9.0.200. It’s for .NET developers and tech leads who own a repo, a pipeline, or both.

Chapters

0:00 Welcome
0:09 The merge conflict nobody owns
0:38 What you'll do
0:56 Why the .sln file breaks merges
1:21 .sln vs .slnx — what's actually stored
2:01 dotnet new sln now creates .slnx
3:45 Inside the new file
4:05 dotnet sln migrate
4:57 Delete the old .sln and build
5:32 The diff: 40+ lines to 9
5:54 Is .slnx faster? (honest test)
6:13 The catch: it worked on my machine
6:24 Red pipeline: SDK older than 9.0.200
6:49 Fix: pin the SDK in global.json + pipeline
7:08 Rollout checklist
7:31 The bigger pattern
8:09 Recap
8:31 What's holding your team on .sln?
8:54 What's next