[英]Compatibility of dynamically loaded assemblies
我想在運行時動態加載 dotnet 程序集。
假設我有 netcore 3.1 控制台應用程序:
當我有 dotnet framework 4.8 控制台應用程序時,相反的情況呢:
.NET Standard 是一個接口- 您可以調用的 API 版本列表。
.NET 標准可以被 .NET 框架和 .NET 核心引用。
這是什么意思?
您應該對類庫使用 .Net 標准。
.NET 框架和 .NET 核心這兩個目標是一個平台。 .Net 框架僅適用於 Windows,而 .Net 核心適用於所有三個(Windows/Linux/MacOS)操作系統。 這些不應相互引用。
這就是 .Net 標准存在的原因。
所以要快速回答你的問題。
當我有 dotnet framework 4.8 控制台應用程序時,相反的情況呢:
這是針對 .NET 標准的。 取自 Microsoft Docs。
文檔非常清楚您需要注意什么。 下面的文字與屏幕截圖中的文字相似。 我在這里添加了更多可讀性。
下表列出了支持每個 .NET Standard 版本的最低平台版本。 這意味着所列平台的更高版本也支持相應的 .NET Standard 版本。 例如,.NET Core 2.2 支持 .NET Standard 2.0 及更早版本。
除此之外 -> https://docs.microsoft.com/en-us/dotnet/standard/net-standard#net-implementation-support
為了避免定位錯誤和傳遞依賴錯誤或至少將它們保持在最低限度。 使用 .NET 標准時,將包管理更改為PackageReference 。
<RestoreProjectStyle>PackageReference</RestoreProjectStyle>
下面的鏈接提供了完整信息以及針對此類錯誤的一些故障排除提示。
來源: https : //www.hanselman.com/blog/ReferencingNETStandardAssembliesFromBothNETCoreAndNETFramework.aspx
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.