Ready-to-use guide for comprehensive .NET framework upgrade analysis and execution
Use this skill when upgrading projects from .NET Framework, .NET Core, or .NET Standard to a modern .NET target (e.g., net8.0).
.NET Framework, .NET Core, .NET Standard). Analyze each .csproj for its current TargetFramework and SDK usage.packages.config projects that need migration to PackageReference format..NET Upgrade Assistant vs. manual upgrades based on project structure.TargetFramework for each project (e.g., net8.0). Review and update deprecated SDK or build configurations.WebHostBuilder → HostBuilder). Suggest replacements for deprecated .NET APIs and third-party libraries.async/await where appropriate for improved performance and scalability.# List outdated packages across the solution
dotnet list package --outdated
# List packages with known vulnerabilities
dotnet list package --vulnerable
UseDotNet@2 and NuGetToolInstaller tasks.# Build the upgraded solution
dotnet build FinancialPortal.Accounting/FinancialPortal.Accounting.sln --configuration Release
# Run the full test suite after upgrade
dotnet test FinancialPortal.Accounting/FinancialPortal.Accounting.sln
.NET Upgrade Assistant and API Analyzer for automated scanning.Startup.cs → Program.cs refactoring.Upgrade to .NET [Version] — [ProjectName]. Tag PRs with breaking-change labels when applicable.TargetFramework values and any removed dependencies..NET Upgrade Assistant — automated project file updates, package migration, and code fixersdotnet list package --outdated — identify packages needing updatesdotnet migrate — migrate legacy project.json solutions (pre-.NET Core 2)dotnet list package --include-transitive) — visualize transitive dependencies before upgrading# Install the Upgrade Assistant global tool
dotnet tool install -g upgrade-assistant
# Analyze a project for upgrade readiness
upgrade-assistant analyze FinancialPortal.Accounting/FinancialPortal.Accounting.sln
# Run the interactive upgrade wizard
upgrade-assistant upgrade FinancialPortal.Accounting/FinancialPortal.Accounting.sln