簡體   English   中英

在標准.net控制台應用程序中使用.Net Core dll

[英]Using .Net Core dll in standard .net Console app

我已經使用.NET Core 2.1在VS 2017中建立了一個類庫。 現在,我想在.NET Framework 4.6.2內置的標准控制台應用程序中使用該dll。

當我在控制台應用程序中引用.NET Core dll時,出現此錯誤:

未處理的異常:System.IO.FileLoadException:無法加載文件或程序集'System.Runtime,版本= 4.2.1.0,區域性=中性,PublicKeyToken = b03f5f7f11d50a3a'或其依賴項之一。 找到的程序集的清單定義與程序集引用不匹配。 (來自HRESULT的異常:0x80131040)在Marketo_Console.Program.Main(String [] args)

如何解決呢? 如何在標准控制台應用程序中使用.NET Core dll?

如何解決呢?

你不能。 至少不是直接。

  • .NET Core可以運行針對.NET Core本身或.NET Standard的程序集
  • .NET Framework可以運行針對.NET Framework本身或.NET Standard的程序集

因此,無法將兩個分別針對Full Framework和Core的程序集組合在一起。 不在Core中,也不在完整框架中。 (您也許可以找到hacks並在各處“但對我來說這是可行的”解決方案,但是對於特定的用例,它們是非常脆弱的例外)。

可以將.NET Core程序集的目標框架切換到.NET Framework或.NET Standard,或者可以提供多個目標框架來構建支持.NET Core 完整框架的Nuget程序包。

但是,如果您需要.NET Core程序集 .NET Framework應用程序,則不能以這種方式一起使用它們。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM