.NETのGitHub Copilotアップグレードは、シナリオとスキルを通じてアップグレードと最新化に役立ちます。
- Scenarios は、.NET Framework から .NET 10 へのアップグレードなど、主要なアップグレード目標のためのエンド ツー エンドのマネージド ワークフローです。 シナリオは、評価、計画、タスクごとの実行というライフサイクル全体を調整します。
- スキル は、EF6 を EF Core に変換したり、WCF を CoreWCF に置き換えたりするなど、特定のアップグレード タスクに重点を置いた機能です。 アップグレード中にエージェントが関連するコードを検出すると、スキルが自動的にアクティブ化されます。
エージェントは、C# プロジェクトと Visual Basic プロジェクトの両方をサポートします。
Tip
名前を覚える必要はありません。 必要なもの (
シナリオ
シナリオは、エージェントの最上位レベルのアップグレード ワークフローです。 会話を開始すると、エージェントは目標に最適なシナリオを特定し、その手順を順を追って説明します。
| シナリオ | それが何をするか | プロンプトの例 |
|---|---|---|
| .NET バージョンのアップグレード | プロジェクトを以前の.NETバージョンから .NET 8 以降にアップグレードします。 | ソリューションを.NET 10にアップグレードします |
| .NET Framework バージョンのアップグレード | 最新の.NETに移行せずに、.NET Framework プロジェクトを .NET Framework 4.8.1 にアップグレードします。 | ".NET Framework 4.8.1 へのアップグレード" |
| SDK スタイルの変換 | レガシ プロジェクト ファイルを最新の SDK 形式に変換します。 | "プロジェクトを SDK スタイルに変換する" |
| 拡張 SDK スタイルの変換をVisual Studioする | VSIX/VSSDK 拡張プロジェクトを SDK スタイルの形式に変換します。 | "VSIX プロジェクトを SDK スタイルに変換する" |
| NuGet パッケージのアップグレード | 特定の NuGet パッケージをアップグレードし、結果として生じる破壊的変更を修正します。 | "Serilog を最新バージョンにアップグレードする" |
| Newtonsoft.Json のアップグレード | ソリューション全体で Newtonsoft.Json を System.Text.Json に置き換えます。 | "Newtonsoft.Json からのアップグレード" |
| SqlClient のアップグレード | System.Data.SqlClient をMicrosoftにアップグレードします。Data.SqlClient。 | "SqlClient をモダン パッケージに更新する" |
| アップグレードAzure Functions | Azure Functionsインプロセスから分離ワーカー モデルにアップグレードします。 | Azure Functionsをアップグレードする |
| Azure移行 | アプリの最新化セッションを開始して、アプリケーションを Azure サービスに移動します。 | "アプリを Azure に移行する" |
| ARM64 の移行 | アプリが Apple Silicon、ARM 上のWindows、クラウド ARM64 ハードウェアで実行されるように、ARM64 サポートを追加します。 | "アプリを ARM64 で実行する" |
| SK エージェントから Microsoft Agent Framework へのアップグレード。 | "私のSKエージェントをアップグレードする" | |
| Aspire 統合 | 内部ループとAzureデプロイのAspireサポートを追加します。 | "アプリに Aspire を追加する" |
| Aspire バージョンのアップグレード | 既存の Aspire アプリケーションを新しいバージョンにアップグレードします。 | " Aspire バージョンのアップグレード" |
| WebForms から Blazor へのアップグレード | アプリケーション ASP.NET Web Forms Blazor Server にアップグレードします。 | "Web フォーム アプリを Blazor にアップグレードする" |
| WinForms 機能の導入 | ダーク モード、非同期 API、MVVM などの最新のWindows フォーム機能を採用します。 | "WinForms アプリにダーク モードを追加する" |
エンド ツー エンドのチュートリアルについては、「 コアの概念」を参照してください。
.NETバージョンのアップグレード
最も一般的なシナリオ。 プロジェクトを古い.NETバリアントから最新のバージョンにアップグレードします。
| Source | 目標 |
|---|---|
| .NET Framework (任意のバージョン) | .NET 8 以降 |
| .NET Framework (任意のバージョン) | .NET Framework 4.8.1 |
| .NET Core 1.x – 3.x | .NET 8 以降 |
| .NET 5 以降 | .NET 8 以降 |
エージェントは、依存関係グラフを分析し、NuGet の互換性を確認し、重大な変更を識別し、ソリューションに最適な戦略 (ボトムアップ、トップダウン、または一括) を使用してタスク 計画を作成します。 プロジェクトでフォーマット変換が必要な場合、エージェントはアップグレードの一環として自動的に処理します。 適切なターゲットの選択に役立つよう、エージェントはリリースの状態とサポート ライフサイクル (LTS と STS) についても説明します。
アップグレードが完了すると、エージェントはレポートを生成し、 Aspire 統合、EF6to-EF Core アップグレード、WinForms 機能の導入、ARM64 移行などの後続作業を提案できます。
.NET Framework バージョンのアップグレード
.NET Framework プロジェクトを .NET Framework 4.8.1 (net481) にアップグレードし、完全な.NET Framework に保持します。 最新の .NET Framework バージョンが必要で、最新の.NETに移行する準備ができていない場合は、このシナリオを選択します。 SDK スタイルの変換を明示的に要求しない限り、エージェントは既存のプロジェクト形式、レガシ、または SDK スタイルを保持します。
SDK スタイルの変換
ターゲット フレームワークを変更せずに、レガシ .csproj、 .vbproj、 .fsproj ファイルを最新の SDK スタイルの形式に変換します。 エージェントは、バージョンのアップグレード中に変換を自動的に処理します。 必要に応じて、このシナリオを個別に実行します。
拡張 SDK スタイルの変換をVisual Studioする
Visual Studio拡張機能 (VSIX/VSSDK) プロジェクトを従来のプロジェクト形式から SDK スタイルに変換します。 エージェントは、パッケージ参照、VSIX マニフェスト、VSCT コマンド テーブル、プロジェクト機能、F5 デバッグが依存するソリューション配置マーカーなど、VSSDK 固有の懸念事項を処理します。
NuGet パッケージのアップグレード
プロジェクト、フォルダー、ソリューション、またはリポジトリ全体にわたって、1 つ以上の NuGet パッケージをターゲット バージョンまたはサポートされている最新バージョンにアップグレードします。 エージェントは、新しいバージョンによって導入された破壊的な API の変更を検出し、影響を受けるコードを修正します。
Newtonsoft.Json のアップグレード
ソリューション全体で Newtonsoft.Json を System.Text.Json に置き換えます。 カスタム コンバーター、 [JsonProperty] 属性、 JObject/JArray 使用法、シリアル化設定を処理します。
SqlClient のアップグレード
System.Data.SqlClient から Microsoft.Data.SqlClient にアップグレードします。
Encrypt=trueの既定の動作変更と接続文字列の違いを処理します。
アップグレードAzure Functions
Program.cs と HostApplicationBuilder を使用して、インプロセス ホスティング モデルから分離ワーカー モデルにAzure Functionsアップグレードします。 Application Insights のアップグレードが含まれます。
Azure移行
アプリケーションをクラウド サービスに移行するアプリの最新化セッションAzure開始します。 このシナリオは、Azureへの移行、Azure移行オプションの確認、またはアプリの最新化作業の開始を求める場合に使用します。
ARM64 の移行
ARM64 のサポートをプロジェクトに追加して、Apple Silicon、ARM、Linux、Alpine ARM64、クラウド ARM64 ハードウェア (AWS Graviton、Azure Ampere など) でWindowsします。 このエージェントは、ARM64 ランタイム識別子 (win-arm64、 linux-arm64、 linux-musl-arm64、 osx-arm64) を対象とし、x86 と x64 の前提条件を修正し、不足している ARM64 ネイティブ NuGet 資産を解決し、x86 ハードウェア組み込みを保護します。
Microsoft Agent Framework へのSemantic Kernel
Semantic Kernel エージェント (ChatCompletionAgent、OpenAIAssistantAgent) から Microsoft Agent Framework にアップグレードします。 パッケージ、名前空間、エージェントの作成、ツールの登録、スレッド管理、および呼び出しパターンを更新します。
Aspire 統合
内部ループ開発とAzureデプロイの準備のために、既存のアプリケーションにAspireサポートを追加します。 Aspire CLI を設定し、ターゲット フレームワークの互換性を確認し、サービス間の通信をマップし、AppHost の配線を Aspire CLI エージェントに委任します。
Aspire バージョンのアップグレード
既存の Aspire アプリケーションを新しいバージョンの Aspireにアップグレードします。 Aspireバージョン間のパッケージの更新、構成の変更、および API の破壊的変更を処理します。 ソリューションに Aspire プロジェクトが含まれている場合、 Aspire バージョンによって必要なターゲット フレームワークが決定されるため、エージェントはターゲット フレームワークのアップグレードにもこのシナリオを優先します。
WebForms から Blazor へのアップグレード
アプリケーション ASP.NET Web Forms Blazor Server にアップグレードします。 Web フォームのページ、コントロール、および分離コードを Blazor コンポーネントに変換し、プロジェクトのセットアップ (サイド バイ サイドまたはインプレース)、 Routes コンポーネント、 App.razor 対話型サーバー レンダリング モード、および静的アセットの移行を処理します。
WinForms 機能の導入
ダーク モード (Application.SetColorMode)、非同期 API (Control.InvokeAsync、Form.ShowAsync、Form.ShowDialogAsync、TaskDialog.ShowDialogAsync)、MVVM パターンなど、.NET 8 以降を既にターゲットとするアプリケーションの最新のWindows フォーム機能を採用します。 ダーク モードと非同期 API には、.NET 9 以降が必要です。 .NET 9 では、Form.ShowAsyncとForm.ShowDialogAsyncは試験段階であるため、警告WFO5002を抑制してオプトインします。 エージェントは、多くの場合、.NET バージョンのアップグレードが完了した後にこのシナリオを提案します。
アップグレード スキル: 一般的
プロジェクトの種類にまたがって適用される汎用アップグレード スキル。
| Skill | それが何をするか |
|---|---|
| プロジェクトのビルド | ソリューションに適したビルド ツールを選択して実行し、変更後にビルドを検証します。 |
| SDK スタイルへの変換 | レガシ プロジェクト ファイルを、 packages.config を含む最新の SDK スタイルの形式に PackageReferenceに変換します。 マルチプロジェクト ソリューションにトポロジの順序を使用します。 |
| 中央パッケージ管理への変換 |
Directory.Packages.propsを使用して、プロジェクトごとの NuGet パッケージのバージョン管理を一元化されたパッケージ管理に変換します。 |
| ターゲット フレームワークの管理 | 単一ターゲットとマルチターゲットの間の変換など、ターゲット フレームワークを追加、削除、置換、アップグレードします。 |
| パッケージ参照の管理 |
PackageReference、ProjectReference、およびFrameworkReference項目を追加、削除、更新します。 中央パッケージ管理をサポートします。 |
| レガシ .NET パッケージの管理 | SDK スタイル以外のプロジェクト ファイルでpackages.configまたはPackageReferenceを使用する、.NET Framework 4.x プロジェクトの NuGet パッケージを管理します。 |
| プロジェクトのプロパティの変更 | プロジェクト ファイルとDirectory.Build.propsのTargetFramework、LangVersion、Nullable、OutputType、TreatWarningsAsErrorsなどの MSBuild プロパティを更新します。 |
| C# バージョンの最新化 | 新しい言語機能を使用するように C# コードをアップグレードします。
dotnet formatを使用して機械的な変化をバッチ処理し、セマンティック変換に LLM 判定を使用します。 |
| C# null 許容参照のアップグレード | null 許容参照型を有効にし、すべての CS86xx 警告を体系的に解決します。 ロールアウト戦略、注釈ガイダンス、フレームワーク固有の考慮事項について説明します。 |
アップグレード スキル: データ アクセス
Entity Framework、LINQ to SQL、SQL クライアント ライブラリなど、データ アクセス レイヤーをアップグレードするためのスキル。
| Skill | それが何をするか |
|---|---|
| EDMX から Code-First へのアップグレード | EF6 Database-First および Model-First (.edmx) モデルを EF Core Code-First に変換します。 データベースからエンティティをスキャフォールディングします。 |
| EF DbContext のアップグレード |
DbContext登録をGlobal.asaxまたはStartupから ASP.NET Core依存関係挿入に移動します。 EF6 と EF Core の両方のパターンを処理します。 |
| EF6 Code-First を EF Core にアップグレードする | EF6 Code-First を EF Core にアップグレードします。 パッケージを交換し、名前空間を更新し、 EntityTypeConfiguration と DbModelBuilderを置き換えます。 |
| LINQ to SQL から EF Core へのアップグレード | DBML エンティティ マッピングやストアド プロシージャなど、LINQ to SQL (System.Data.Linq) データ アクセスをEntity Framework Coreにアップグレードします。 |
| Microsoftへのアップグレード。Data.SqlClient |
System.Data.SqlClientからのアップグレード。
Encrypt=trueの既定の変更と接続文字列の違いを処理します。 |
アップグレード スキル: デスクトップ
アップグレード中や最新の WinForms 機能を採用するときに使用される、Windows フォーム アプリケーションのスキル。
| Skill | それが何をするか |
|---|---|
| WinForms アプリケーションのビルド | デザイナーと互換性のあるパターンを使用して WinForms プロジェクトを構造化し、 InitializeComponent をアプリケーション コードから分離します。 |
| WinForms カスタム コントロールの作成 | カスタム レンダリングコントロールや複合コントロールなど、最新の WinForm のカスタム コントロールとユーザー コントロールを作成します。 |
| WinForms 非同期 API の管理 |
Control.InvokeとBeginInvokeの代わりに、Control.InvokeAsync、Form.ShowAsync、Form.ShowDialogAsync、およびTaskDialog.ShowDialogAsyncを採用します。 |
| WinForms データ バインディングの管理 |
BindingSource、INotifyPropertyChanged、検証、マスター詳細のシナリオを使用してデータ バインディングを実装します。 |
| WinForms デザイナー コードの管理 |
.Designer.cs構造とInitializeComponentパターンを管理します。 デザイナーの読み込みエラーとラウンドトリップの問題を修正します。 |
| WinForms の高 DPI レイアウトの管理 |
TableLayoutPanelとFlowLayoutPanelを使用して DPI 対応レイアウトを構築し、モニターごとの V2 DPI 対応を構成します。 |
| WinForms MVVM の管理 | ビュー モデル、 INotifyPropertyChanged、コマンド、および DataContextを使用して、WinForms に MVVM を実装します。 |
| WinForms レンダリングの管理 | オーバーライドや所有者描画コントロールなど、GDI および GDI+ を使用してカスタム 描画を実装します。 |
アップグレード スキル: テスト
| Skill | それが何をするか |
|---|---|
| アップグレード テスト ベースラインの生成 | 互換性リスクのあるプロジェクトのアップグレード前に動作ロック テストを生成します。 外部 dotnet-test プラグインを使用します。 |
| dotnet-test インストールの管理 | AI テスト生成を選択したが、テスト生成エージェントが読み込まれていないときに、外部の dotnet-test プラグインをインストールします。 |
アップグレード スキル: Web と ASP.NET
ASP.NET Framework アプリケーションを ASP.NET Coreにアップグレードするためのスキル。
ASP.NET Framework のアップグレード
| Skill | それが何をするか |
|---|---|
| Framework から Core への ASP.NET アップグレード | ASP.NET Framework (MVC および Web API) から ASP.NET Coreへのアップグレードを調整し、他の Web スキルの実行順序を定義します。 |
| ASP.NET ID のアップグレード | ASP.NET MVC ID を ASP.NET Core ID (IdentityDbContext、UserManager、SignInManager、認証ミドルウェア、OWIN クリーンアップなど) にアップグレードします。 |
| Global.asax のアップグレード |
Global.asax ライフサイクル イベント (Application_Start、Application_Error) を ASP.NET Core Program.cs およびミドルウェアに変換します。 |
| OWIN から ASP.NET Core へのアップグレード | OWIN/Katana ミドルウェア (IAppBuilder、OwinMiddleware)、認証、パイプライン コンポーネント、SignalR 2.x を、ASP.NET Core同等のものに置き換えます。 |
| YARP プロキシ プロジェクトのスキャフォールディング | YARP リバース プロキシを使用して、既存の .NET Framework アプリと共に新しい ASP.NET Core プロジェクトを作成し、段階的なサイド バイ サイド アップグレードを行います。 |
MVC の機能
| Skill | それが何をするか |
|---|---|
| MVC 認証のアップグレード | Forms 認証、メンバーシップ プロバイダー、Windows認証、トークンベースの認証、承認規則、偽造防止トークンを ASP.NET Coreにアップグレードします。 |
| MVC バンドルのアップグレード |
System.Web.Optimizationバンドルをダイレクト <script>タグと<link> タグまたはモダン バンドルに変換します。 |
| MVC 構成のアップグレード |
appsettings.json、IConfiguration、IOptionsなど、ASP.NET Core構成システムにweb.config設定をアップグレードします。 |
| MVC コンテンツ ネゴシエーションのアップグレード | サブクラス MediaTypeFormatter 入力フォーマッタと出力フォーマッタに変換し、 IContentNegotiator を OutputFormatterSelectorに置き換えます。 |
| MVC コントローラーのアップグレード | MVC および Web API コントローラーとアクションの結果を、HttpResponseMessageやIHttpActionResultの戻り値など、ASP.NET Coreパターンにアップグレードします。 |
| MVC 依存関係挿入のアップグレード |
DependencyResolver登録を、組み込みの DI または最新化されたサード パーティ製コンテナー ASP.NET Coreアップグレードします。 |
| MVC フィルターのアップグレード | グローバル MVC フィルター (GlobalFilters、FilterConfig、HandleErrorAttribute) を例外処理ミドルウェアとフィルター パイプライン ASP.NET Core変換します。 |
| MVC HTTP パイプラインのアップグレード |
IHttpModule、IHttpHandler、および.ashx ハンドラーを ASP.NET Coreミドルウェアとエンドポイントにアップグレードします。 |
| MVC HttpContext のアップグレード |
HttpContext.Current、HttpRequest、HttpResponse、およびHttpServerUtilityの使用を同等の ASP.NET Coreにアップグレードします。 |
| MVC ログのアップグレード | ログ記録、エラー ミドルウェア、正常性チェックを ASP.NET Coreするために、System.Diagnostics.Trace、log4net、NLog、ELMAH、およびcustomErrorsをアップグレードします。 |
| MVC モデル バインドのアップグレード | バインディング ソース属性、カスタム モデル バインダー、値プロバイダー、およびオーバーポスティング保護を ASP.NET Coreにアップグレードします。 |
| MVC Razor ビューのアップグレード | HTML ヘルパーをタグ ヘルパーに変換し、子アクションを使用してコンポーネントを表示し、レイアウト インフラストラクチャを更新します。 |
| MVC ルーティングのアップグレード |
RouteCollection ルーティングを ASP.NET Coreエンドポイント ルーティング (MapControllerRoute、属性ルーティング) に変換します。 |
| MVC セッション状態のアップグレード |
HttpSessionStateを分散キャッシュ バックエンドでISessionに変換し、TempDataを Cookie ベースのプロバイダーに移動します。 |
| MVC 静的ファイルのアップグレード |
Content/、Scripts/、およびApp_Data/をwwwroot/に移動し、静的ファイル ミドルウェアを構成し、VirtualPathProviderをIFileProviderに置き換えます。 |
| MVC System.Web アダプターのアップグレード |
Microsoft.AspNetCore.SystemWebAdapters互換性 shim をインストールして、増分アップグレード中System.Webパターンが動作し続けます。 |
| MVC 検証のアップグレード | データ注釈、カスタム ValidationAttribute クラス、 ModelState 処理、目立たないクライアント検証、FluentValidation 統合をアップグレードします。 |
WCF
| Skill | それが何をするか |
|---|---|
| WCF から CoreWCF へのアップグレード | .NET 6 以降の場合、サーバー側の WCF サービスを CoreWCF にアップグレードします。 ホスティング、構成、バインディング、動作拡張機能、および APM スタイルのコントラクトを変換します。 |
Web フォームと Blazor サーバー
| Skill | それが何をするか |
|---|---|
| Web フォームを Blazor サーバーにアップグレードする | Blazor プロジェクトのセットアップ (サイド バイ サイドまたはインプレース)、 Routes コンポーネント、 App.razor 対話型サーバー レンダリング モード、静的アセットの移行など、完全なアップグレードを処理します。 |
| Blazor サーバー認証の管理 | コンポーネント ハンドラーで警告なしに失敗する WebSocket 回線や Cookie 操作中の null HttpContextなど、ASP.NET Core ID に関する Blazor Server 認証の問題を解決します。 |
| Blazor サーバーのデータ アクセスの管理 | Blazor Server のデータと状態の問題 (WebSocket 回線での null Session 、スレッド エラーの DbContext 、ウィザードまたはカートの状態の損失など) を解決します。 |
アップグレード スキル: クラウド
| Skill | それが何をするか |
|---|---|
| スタートアップAzure Functionsアップグレード | Azure Functionsインプロセス スタートアップ フック (FunctionsStartup、IFunctionsHostBuilder) から、Program.csを使用して分離ワーカー モデルにアップグレードします。 |
IHostApplicationBuilderと Application Insights を使用して、v2 分離ワーカー パターンにAzure Functionsアップグレードします。 |
アップグレード スキル: ライブラリ
ほとんどのライブラリ スキルは非推奨に基づくものであり、パッケージに非推奨または非推奨のフラグが設定されていて、まだサポートされているパッケージに定期的なバージョンのバンプが必要な場合ではなく、置き換える必要がある場合にアクティブになります。
| Skill | それが何をするか |
|---|---|
| ADAL から MSAL へのアップグレード | 非推奨のAzure Active Directory認証ライブラリ (ADAL) を Microsoft Authentication Library (MSAL) にアップグレードします。 |
古い Microsoft.AspNet.SignalR を Microsoft.AspNetCore.SignalRにアップグレードします。 |
|
| Autofac を完全に削除し、すべての登録、有効期間、モジュールを組み込みの ASP.NET Core依存関係挿入にアップグレードします。 | |
Autofac を DI コンテナーとして保持しますが、ASP.NET Core統合を最新化し、セットアップをProgram.csに移動します。 |
|
| アップグレード Azure Key Vault | 非推奨の Microsoft.Azure.KeyVault SDK を Azure.Security.KeyVault クライアント ライブラリにアップグレードします。 |
| アップグレード Azure Service Bus | 非推奨の WindowsAzure.ServiceBus を Azure.Messaging.ServiceBusにアップグレードします。 |
| アップグレード Azure Storage | 非推奨のWindowsAzure.Storageを、Azure.Storage.BlobsやAzure.Data.Tablesなどの最新のAzure SDK ストレージ ライブラリにアップグレードします。 |
| Bond インターフェイスのアップグレード | 古い Microsoft.Bond.Interfaces パッケージを統合 Bond.CSharp SDK にアップグレードします。 |
| Cosmos DB Bulk Executor のアップグレード | 非推奨の Microsoft.Azure.CosmosDB.BulkExecutor ライブラリを、 Microsoft.Azure.Cosmos SDK の組み込み一括サポートにアップグレードします。 |
| 暗号化名前空間のアップグレード |
System.Security.Cryptography名前空間の分割を修正します。
X509Certificate2やSignedCmsなどの型に対して適切なusing ステートメントと NuGet パッケージを追加します。 |
| Data EDM から OData へのアップグレード | 古い Microsoft.Data.Edm を OData v4 の Microsoft.OData.Edm にアップグレードします。 |
| データ OData から OData Core へのアップグレード | 古い Microsoft.Data.OData を OData v4 シリアル化の Microsoft.OData.Core にアップグレードします。 |
| Data Services クライアントのアップグレード | 古い Microsoft.Data.Services.Client (WCF Data Services) を Microsoft.OData.Clientにアップグレードします。 |
| DocumentDB から Cosmos DB へのアップグレード | 非推奨の Microsoft.Azure.DocumentDB SDK (V2) を Microsoft.Azure.Cosmos SDK (V3) にアップグレードします。 |
| Newtonsoft から System.Text.Json へのアップグレード |
Newtonsoft.Jsonからの完全なアップグレード。 コンバーター、属性、動的な型、および設定を処理します。 |
| OWIN Cookie 認証のアップグレード |
Microsoft.Owin.Security.Cookiesを ASP.NET Core Cookie 認証にアップグレードします。 |
| OWIN OAuth を JWT にアップグレードする | ベアラー認証Microsoft.Owin.Security.OAuth JWT ベアラー認証 ASP.NET Coreアップグレードします。 |
| OWIN OpenID Connect のアップグレード |
Microsoft.Owin.Security.OpenIdConnectを OpenID Connect 認証 ASP.NET Coreアップグレードします。 |
| PowerShell SDK のアップグレード | PowerShell モジュールWindows PowerShell 5.1 参照アセンブリから、PowerShell 7 以降のクロスプラットフォーム Microsoft.PowerShell.SDK パッケージにアップグレードします。 |
| RazorEngine を RazorLight にアップグレードする | 非推奨の RazorEngine を、MVC の外部で Razor テンプレート レンダリング用に RazorLight にアップグレードします。 |
| エージェントへのSemantic Kernelのアップグレード | ツールの登録やスレッド管理など、Microsoft Agent Framework (Microsoft.Agents.AI) にMicrosoft.SemanticKernel.Agentsをアップグレードします。 |
| SPA サービスを SPA プロキシにアップグレードする | 古い Microsoft.AspNetCore.SpaServices.Extensions を Angular および React SPA の Microsoft.AspNetCore.SpaProxy にアップグレードします。 |
| System.Spatial のアップグレード | 古い System.Spatial を OData v4 の Microsoft.Spatial にアップグレードします。 |
| MSMQ へのアップグレード。メッセージング |
System.Messaging (.NET Framework のみ) から最新の.NETのMSMQ.Messagingへのアップグレード。 |
| WebAPI CORS のアップグレード |
Microsoft.AspNet.WebApi.Cors を CORS ミドルウェア ASP.NET Coreアップグレードします。 |
| WebAPI OData のアップグレード |
Microsoft.AspNet.WebApi.OData を Microsoft.AspNetCore.OData にアップグレードします。 |
スキルのアクティブ化
アップグレード セッションの展開に合わせて、エージェントはスキルを段階的に読み込みます。
| When | 何が起きるか |
|---|---|
| セッションの開始 | エージェントは、一致するシナリオと、コードベースにすぐに関連するすべてのスキルを読み込みます。 |
| 実行中 | エージェントはタスクを通じて動作し、EDMX ファイル、WCF サービス、OWIN ミドルウェアなどの特定のアップグレード パターンが発生したときに、特別なスキルをオンデマンドで読み込みます。 |
| 要求時 | 任意のスキルをいつでも使用するようにエージェントに依頼できます。 たとえば、「WCF を CoreWCF にアップグレードする」や「EF6 アップグレード スキルを使用する」などです。 |
スキルの読み込みを管理する必要はありません。 エージェントによって自動的に処理されます。 必要な内容を説明するだけです。
独自のスキルを作成する
内部フレームワークのアップグレード、コーディング規則、カスタム アップグレード ワークフローなど、コードベースに固有のエージェント パターンを教えるカスタム スキルを作成します。
リポジトリ (.github/skills/) またはユーザー プロファイル (%UserProfile%/.copilot/skills/) にスキルを配置し、エージェントが自動的にスキルを選択します。
カスタム スキルの作成の詳細については、「カスタム アップグレード手順の適用」を参照してください。
関連するコンテンツ
.NET