Voltar ao índice
IA e agentes Fonte oficial

Análise e execução de upgrades .NET

Fornece prompts para classificar projetos, revisar dependências e planejar upgrades .NET incrementais com checkpoints.

Ver código no GitHub Instala diretamente do repositório-fonte.

O que esta skill faz

Esta skill apoia a descoberta e o planejamento de upgrades em soluções com .NET Framework, .NET Core e .NET Standard. Ela analisa projetos, dependências, packages.config, ordem de migração, frameworks de destino e padrões de código obsoletos.

Quando usar

  • Classificar projetos e TargetFrameworks de uma solution
  • Mapear dependências internas e externas
  • Planejar migração de packages.config para PackageReference
  • Definir uma ordem segura de atualização
  • Identificar APIs e configurações obsoletas

Como usar

  1. Revise o repositório, a solution e todos os arquivos csproj
  2. Classifique projetos e construa o grafo de dependências
  3. Avalie compatibilidade de pacotes e SDKs
  4. Defina etapas incrementais com checkpoints de rollback
  5. Compile e execute os testes após cada etapa do upgrade

O que revisar antes de instalar

  • A compatibilidade real de dependências deve ser verificada separadamente
  • O TargetFramework adequado depende dos requisitos do sistema
  • Upgrade Assistant e migração manual exigem avaliação por projeto

SKILL.md

---
name: dotnet-upgrade
description: 'Ready-to-use prompts for comprehensive .NET framework upgrade analysis and execution'
---

# Project Discovery & Assessment
  - name: "Project Classification Analysis"
    prompt: "Identify all projects in the solution and classify them by type (`.NET Framework`, `.NET Core`, `.NET Standard`). Analyze each `.csproj` for its current `TargetFramework` and SDK usage."

  - name: "Dependency Compatibility Review"
    prompt: "Review external and internal dependencies for framework compatibility. Determine the upgrade complexity based on dependency graph depth."

  - name: "Legacy Package Detection"
    prompt: "Identify legacy `packages.config` projects needing migration to `PackageReference` format."

  # Upgrade Strategy & Sequencing
  - name: "Project Upgrade Ordering"
    prompt: "Recommend a project upgrade order from least to most dependent components. Suggest how to isolate class library upgrades before API or Azure Function migrations."

  - name: "Incremental Strategy Planning"
    prompt: "Propose an incremental upgrade strategy with rollback checkpoints. Evaluate the use of **Upgrade Assistant** or **manual upgrades** based on project structure."

  - name: "Progress Tracking Setup"
    prompt: "Generate an upgrade checklist for tracking build, test, and deployment readiness across all projects."

  # Framework Targeting & Code Adjustments
  - name: "Target Framework Selection"
    prompt: "Suggest the correct `TargetFramework` for each project (e.g., `net8.0`). Review and update deprecated SDK or build configurations."

  - name: "Code Modernization Analysis"
    prompt: "Identify code patterns needing modernization (e.g., `WebHostBuilder` → `HostBuilder`). Suggest replacements for deprecated .NET APIs and third-party libraries."

  - name: "Async Pattern Conversion"
    prompt: "Recommend conversion of synchronous calls to async where appropriate for improved performance and scalability."

  # NuGet & Dependency Management
  - name: "Package Compatibility Analysis"
    prompt: "Analyze outdated or incompatible NuGet packages and suggest compatible versions. Identify third-party libraries that lack .NET 8 support and provide migration paths."

  - name: "Shared Dependency Strategy"
    prompt: "Recommend strategies for handling shared dependency upgrades across projects. Evaluate usage of legacy packages and suggest alternatives in Microsoft-supported namespaces."

  - name: "Transitive Dependency Review"
    prompt: "Review transitive dependencies and potential version conflicts after upgrade. Suggest resolution strategies for dependency conflicts."

  # CI/CD & Build Pipeline Updates
  - name: "Pipeline Configuration Analysis"
    prompt: "Analyze YAML build definitions for SDK version pinning and recommend updates. Suggest modifications for `UseDotNet@2` and `NuGetToolInstaller` tasks."

  - name: "Build Pipeline Modernization"
    prompt: "Generate updated build pipeline snippets for .NET 8 migration. Recommend validation builds on feature branches before merging to main."

  - name: "CI Automation Enhancement"
    prompt: "Identify opportunities to automate test and build verification in CI pipelines. Suggest strategies for continuous integration validation."

  # Testing & Validation
  - name: "Build Validation Strategy"
    prompt: "Propose validation checks to ensure the upgraded solution builds and runs successfully. Recommend automated test execution for unit and integration suites post-upgrade."

  - name: "Service Integration Verification"
    prompt: "Generate validation steps to verify logging, telemetry, and service connectivity. Suggest strategies for verifying backward compatibility and runtime behavior."

  - name: "Deployment Readiness Check"
    prompt: "Recommend UAT deployment verification steps before production rollout. Create comprehensive testing scenarios for upgraded components."

  # Breaking Change Analysis
  - name: "API Deprecation Detection"
    prompt: "Identify deprecated APIs or removed namespaces between target versions. Suggest automated scanning using `.NET Upgrade Assistant` and API Analyzer."

  - name: "API Replacement Strategy"
    prompt: "Recommend replacement APIs or libraries for known breaking areas. Review configuration changes such as `Startup.cs` → `Program.cs` refactoring."

  - name: "Regression Testing Focus"
    prompt: "Suggest regression testing scenarios focused on upgraded API endpoints or services. Create test plans for critical functionality validation."

  # Version Control & Commit Strategy
  - name: "Branching Strategy Planning"
    prompt: "Recommend branching strategy for safe upgrade with rollback capability. Generate commit templates for partial and complete project upgrades."

  - name: "PR Structure Optimization"
    prompt: "Suggest best practices for creating structured PRs (`Upgrade to .NET [Version]`). Identify tagging strategies for PRs involving breaking changes."

  - name: "Code Review Guidelines"
    prompt: "Recommend peer review focus areas (build, test, and dependency validation). Create checklists for effective upgrade reviews."

  # Documentation & Communication
  - name: "Upgrade Documentation Strategy"
    prompt: "Suggest how to document each project's framework change in the PR. Propose automated release note generation summarizing upgrades and test results."

  - name: "Stakeholder Communication"
    prompt: "Recommend communicating version upgrades and migration timelines to consumers. Generate documentation templates for dependency updates and validation results."

  - name: "Progress Tracking Systems"
    prompt: "Suggest maintaining an upgrade summary dashboard or markdown checklist. Create templates for tracking upgrade progress across multiple projects."

  # Tools & Automation
  - name: "Upgrade Tool Selection"
    prompt: "Recommend when and how to use: `.NET Upgrade Assistant`, `dotnet list package --outdated`, `dotnet migrate`, and `graph.json` dependency visualization."

  - name: "Analysis Script Generation"
    prompt: "Generate scripts or prompts for analyzing dependency graphs before upgrading. Propose AI-assisted prompts for Copilot to identify upgrade issues automatically."

  - name: "Multi-Repository Validation"
    prompt: "Suggest how to validate automation output across multiple repositories. Create standardized validation workflows for enterprise-scale upgrades."

  # Final Validation & Delivery
  - name: "Final Solution Validation"
    prompt: "Generate validation steps to confirm the final upgraded solution passes all validation checks. Suggest production deployment verification steps post-upgrade."

  - name: "Deployment Readiness Confirmation"
    prompt: "Recommend generating final test results and build artifacts. Create a checklist summarizing completion across projects (builds/tests/deployment)."

  - name: "Release Documentation"
    prompt: "Generate a release note summarizing framework changes and CI/CD updates. Create comprehensive upgrade summary documentation."

---