2017-10-25 16 views
0

私は、.Net 3.5とNet Standard 2.0の両方をターゲットとするナゲットを作成しました。 .Net 3.5プロジェクトにナゲットをインストールすると、正しいバージョンのナゲットがインストールされます。しかし、.Net 4.6.1プロジェクトに同じナゲットをインストールしようとすると、Net Standard 2.0の代わりにnet35バージョンがインストールされます。私は.Net 4.6.1がネットスタンダード2.0と互換性があると思っています(Microsoftの公式ドキュメント:https://docs.microsoft.com/en-us/dotnet/standard/net-standardによる)。マルチフレームナゲット不正なフレームワークをインストールする

何か不足していますか、またはナゲットが正しくパッケージされていませんか?

答えて

1

NuGetはそのようには機能しません。 NuGetは、最も特定のターゲットフレームワークを使用して、そのプロジェクトを見つけることができます。 .NET Frameworkを対象とするNuGetパッケージにはアセンブリが存在するため、.NET Frameworkを対象とするプロジェクトの.NET Standardアセンブリではなく、そのアセンブリを使用します。

NuGetパッケージにlib/net35フォルダがない場合、NuGetの最新バージョンが使用されている場合、.NET Framework 2.0アセンブリが.NET Framework 4.6.1プロジェクトで使用されます。

.NET 4.6.1プロジェクトで別のアセンブリを使用する場合は、NuGetパッケージのlib/net461フォルダにアセンブリが必要です。

+0

.NET 4.6.1のターゲティングで追加していますが、うまくいきます。ありがとう。 –

関連する問題