1. ホーム
  2. .net-core

.NET Core 2.0のクラスライブラリを.NET標準に変換する

2023-09-09 05:33:02

質問

.NET Core 2.0 を対象としたクラス ライブラリを .NET Standard に簡単に変換する方法はありますか。

私が正しく理解しているならば、異なる .NET フレームワーク (例: .NET Framework、.NET Core、Xamarin など) を対象とするプロジェクトでクラス ライブラリの再利用性を最大化したい場合、.NET Standard を対象にする方がよいでしょう - ただし、対象となる .NET Standard のバージョンですべての必須 API が利用できることが前提です。

これが、私がクラス ライブラリを .NET Core 2.0 から .NET Standard 1.6 または .NET Standard 2.0 に変換したい理由です。

どのように解決するのですか?

プロジェクトファイルの中で、ターゲットコンパイルの場所を netstandard を正確なバージョンで指定します。

の例 Proj.csproj :

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <TargetFramework>netstandard1.6</TargetFramework>
  </PropertyGroup>
</Project>
...

マイクロソフトは優れた ドキュメント を提供しています。

Dotnet Standardはフレームワークでもライブラリでもなく、抽象的な指示のセットです。 System.Array , String , List といった具合です。現在では の異なる実装があります。 .NET Framework、.NET Core、Mono、Xamarin、Windows Phoneです。これは、異なる実装があなたのライブラリを再コンパイルし、再利用できることを意味します。 netstandard . NuGetパッケージとして非常に良い選択です。

バージョンを弄り回して、ライブラリに必要な最小限の機能セットを見つけることができます。各Dotnet Standardは、前のバージョンの機能を拡張しています。したがって、対象となるバージョンが選択されていないほど、あなたのライブラリはより多くのプラットフォームをサポートすることになります。