使用 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中文網其他相關文章!