クラシック.Net 4.6.2と.Netコアプロジェクト間でNugetパッケージを使用して共有できる.NetコアでC#ライブラリを作成するにはどうすればよいですか。クロスプラットフォームライブラリの開発については、hereというドキュメントを読んでいます。だから私は、セットアップクロスプラットフォーム.netコアライブラリを作成するには?
{
"version": "1.0.0-*",
"frameworks": {
"netstandard1.6": {
"dependencies": {
"NETStandard.Library": "1.6.0"
}
},
"net462": {
}
}
}
以下のように私のproject.jsonは、それから私は、次のコマンド
dotnet pack -c Release
を実行することにより、nugect pckageを作成し、nugetパッケージを発表しました。私のパッケージ名はDTOです。私は問題なくnugetパッケージをインストールすることができた私のtraget .NETのコアプロジェクトで
。しかし、私が古典的な.net 4.6.2プロジェクトにインストールしようとするとエラーが発生する
install-package:パッケージ 'DTO 1.0.0'をインストールできませんでした。 '.NETFramework、Version = v4.6.2'を対象とするプロジェクトにこのパッケージをインストールしようとしましたが、パッケージには アセンブリ参照またはその フレームワークと互換性のあるコンテンツファイルが含まれていません。詳細については、パッケージ作成者にお問い合わせください。ライン:1 CHAR:1 +インストール・パッケージDTO + ~~~~~~~~~~~~~~~~~~~ + CategoryInfo: NotSpecified:(:) [インストール・パッケージ]、例外+ FullyQualifiedErrorId : NuGetCmdletUnhandledException、NuGet.PackageManagement.PowerShellCmdlets.InstallPackageCommand
nugetパッケージが私のローカルサーバー上でホストされていることに注意してください。
2つのノート:あなたは余分 'net462'をターゲットにする必要がある理由。 .NET Framework 4.6.2は 'netstandard1.5'以下を読み込むことができます。私はあなたが1.6必要とすることを非常に疑う。低い方が良いです。 2番目の注記:解凍したナゲットを見ていただけますか? – Thomas
@トーマスなぜ1.6が1.5より優れていますか? – LP13
あなたは[こちら]の詳細情報を見つけることができます(https://github.com/dotnet/corefx/blob/master/Documentation/architecture/net-platform-standard.md) –