NuGet の依存関係を含む .NET Core プラグインの配布
.NET Core を使用してプラグイン システムを構築するには、多くの場合、プラグイン DLL とそれに関連する NuGet 依存関係を配布する必要があります。 ただし、標準の .NET Core ビルド プロセスでは、これらの依存関係が出力ディレクトリに自動的に組み込まれません。これには配布上の課題が伴います。
解決策: ビルド出力に NuGet の依存関係を含める
これを解決するには、.csproj ファイルに次の行を追加します。
<code class="language-xml"><copylocallockfileassemblies>true</copylocallockfileassemblies></code>
これにより、NuGet パッケージがビルド出力フォルダーに確実にコピーされます。 このビルド出力は直接配布には適していないことを覚えておくことが重要です。
重要な考慮事項:
ローカル テストには便利ですが、ビルド出力を直接配布することはベスト プラクティスではありません。 推奨される方法は、dotnet publish
を使用して、必要な依存関係をすべて含む配布可能パッケージを作成することです。
より堅牢なソリューション:DependencyContext API の使用
より堅牢で移植性の高い代替手段は、DependencyContext
API を利用することです。この API を使用すると、アプリケーションの依存関係グラフ内の DLL とその場所をプログラムで解決できます。このアプローチにより、手動によるディレクトリ列挙が回避され、移植性と信頼性が向上します。
以上が.NET Core プラグインのビルド出力に NuGet の依存関係を含める方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。