.NET Portability AnalyzerThe .NET Portability Analyzer

ライブラリをマルチプラットフォーム対応にしたい場合や、Want to make your libraries multi-platform? アプリケーションで他の .NET の実装とプロファイル (.NET Core、.NET Standard、UWP、Xamarin for iOS/Android/Mac など) との互換性を確保するのに必要な作業量を知りたい場合は、Want to see how much work is required to make your application compatible with other .NET implementations and profiles, including .NET Core, .NET Standard, UWP, and Xamarin for iOS, Android, and Mac? .NET Portability Analyzer が役立ちます。このツールを使用すると、アセンブリを分析して、プログラムが .NET 実装全体でどの程度柔軟な構造になっているかについて詳細なレポートを生成することができます。The .NET Portability Analyzer is a tool that provides you with a detailed report on how flexible your program is across .NET implementations by analyzing assemblies. Portability Analyzer は、Visual Studio 拡張機能のコンソール アプリとして提供されます。The Portability Analyzer is offered as a Visual Studio Extension and as a console app.

新しいターゲットNew targets

  • .NET Core: モジュール型の設計で、side-by-side を採用しており、クロスプラットフォームのシナリオを対象としています。.NET Core: Has a modular design, employs side-by-side, and targets cross-platform scenarios. side-by-side 機能により、他のアプリに影響を与えることなく新しい .NET Core バージョンを導入することができます。Side-by-side allows you to adopt new .NET Core versions without breaking other apps.
  • ASP.NET Core: .NET Core 上に構築された最新の Web フレームワークであり、開発者に .NET Core と同じメリットを提供します。ASP.NET Core: is a modern web-framework built on .NET Core thus giving developers the same benefits.
  • ユニバーサル Windows プラットフォーム: .NET Native の静的コンパイルを使用することで、x64 および ARM マシンで動作する Windows ストア アプリのパフォーマンスが向上します。Universal Windows Platform: Improve performance of your Windows Store apps that run on x64 and ARM machines by using .NET Native’s static compilation.
  • .NET Core とプラットフォーム拡張機能: .NET Core API と、WCF、ASP.NET Core、FSharp、Azure などの .NET エコシステム内のその他の API が含まれます。.NET Core + Platform Extensions: Includes the .NET Core APIs in addition to other APIs in the .NET ecosystem such as WCF, ASP.NET Core, FSharp, and Azure.
  • .NET Standard とプラットフォーム拡張機能: .NET Standard API と、WCF、ASP.NET Core、FSharp、Azure などの .NET エコシステム内のその他の API が含まれます。.NET Standard + Platform Extensions: Includes the .NET Standard APIs in addition to other .NET ecosystem such as WCF, ASP.NET Core, FSharp, and Azure.

Portability Analyzer の使用方法How to use the Portability Analyzer

.NET Portability Analyzer を使用するには、Visual Studio Marketplace から拡張機能をダウンロードし、インストールする必要があります。To begin using the .NET Portability Analyzer, you first need to download and install the extension from the Visual Studio Marketplace. Visual Studio 2017 以降のバージョンで機能します。It works on Visual Studio 2017 and later versions. [分析] 、 > [Portability Analyzer Settings (Portability Analyzer の設定)] の順に選択して構成し、ターゲット プラットフォームを選択できます。You can configure it in Visual Studio via Analyze > Portability Analyzer Settings and select your Target Platforms.

Portability のスクリーンショット

プロジェクト全体を分析するには、ソリューション エクスプローラーでプロジェクトを右クリックし、 [Analyze Assembly Portability] (アセンブリの移植性を分析) を選択します。To analyze your entire project, right-click on your project in Solution Explorer and select Analyze Assembly Portability. または、 [分析] メニューで [Analyze Assembly Portability] (アセンブリの移植性を分析) を選択します。Otherwise, go to the Analyze menu and select Analyze Assembly Portability. そこから、プロジェクトの実行可能ファイルまたは DLL を選択します。From there, select your project’s executable or DLL.

ソリューション エクスプローラーからの Portability Analyzer

分析を実行すると、.NET 移植性レポートが表示されます。After running the analysis, you'll see your .NET Portability Report. ターゲット プラットフォームでサポートされていない型のみが一覧に表示され、 [エラー一覧][メッセージ] タブで、推奨事項を確認できます。Only types that are unsupported by a target platform appear in the list and you can review recommendations in the Messages tab in the Error List. また、 [メッセージ] タブから問題のある領域に直接移動することもできます。You can also jump to problem areas directly from the Messages tab.


Visual Studio を使用しない場合は、コマンド プロンプトから Portability Analyzer を使用することができます。If you don’t want to use Visual Studio, you can use the Portability Analyzer from the command prompt. Microsoft/dotnet-apiport リポジトリから API の Portability Analyzer をダウンロードするだけです。Just download the API Portability Analyzer from the Microsoft/dotnet-apiport repository.

  • 現在のディレクトリを分析するには、次のコマンドを入力します。\...\ApiPort.exe analyze -f .Type the following command to analyze the current directory: \...\ApiPort.exe analyze -f .
  • 特定の .dll ファイルの一覧を分析するには、次のコマンドを入力します。\...\ApiPort.exe analyze -f first.dll -f second.dll -f third.dllTo analyze a specific list of .dll files, type the following command: \...\ApiPort.exe analyze -f first.dll -f second.dll -f third.dll

.NET 移植性レポートは、Excel ファイル ( .xlsx) として現在のディレクトリに保存されます。Your .NET Portability Report is saved as an Excel file (.xlsx) in your current directory. Excel のブックの [詳細] タブに詳細情報が記載されています。The Details tab in the Excel Workbook contains more information.

.NET Portability Analyzer の詳細については、GitHub ドキュメントにアクセスし、Channel 9 動画の「A Brief Look at the .NET Portability Analyzer」 (.NET Portability Analyzer の概要) をご覧ください。For more information on the .NET Portability Analyzer, visit the GitHub documentation and A Brief Look at the .NET Portability Analyzer Channel 9 video.