2017-08-08 72 views
1

我有一個dotnet核心1.1應用程序(在VS中,目標.NETCoreApp 1.1)。我無法通過NuGet安裝NLog 4.4.11,因爲它依賴於dotnet框架。 Nuget報告如下:NLog 4.4.11是否可用於dotnet核心1.1應用程序?

Package NLog 4.4.11 is not compatible with netcoreapp1.1  
(.NETCoreApp,Version=v1.1). Package NLog 4.4.11 supports: 
    - monoandroid10 (MonoAndroid,Version=v1.0) 
    - net35 (.NETFramework,Version=v3.5) 
    - net40 (.NETFramework,Version=v4.0) 
    - net45 (.NETFramework,Version=v4.5) 
    - sl4 (Silverlight,Version=v4.0) 
    - sl5 (Silverlight,Version=v5.0) 
    - wp8 (WindowsPhone,Version=v8.0) 
    - xamarinios10 (Xamarin.iOS,Version=v1.0) 

到目前爲止好。

但是,NLog.Extensions.Logging(https://github.com/NLog/NLog.Extensions.Logging)應該對dotnet核心工作,所以我安裝了它。在VS 2017中,該項目包含NLog 4.4.11作爲依賴項。

這很混亂,因爲我不能直接使用NLog,但可以一次刪除?

任何人都有這方面的見解?

+0

NLog 5.0 BETA是唯一支持Net Core的版本:https://www.nuget.org/packages/NLog/5.0.0-beta09 –

回答

0

您可以考慮在日誌記錄與NLog之間添加一個Standard 2.0庫項目和您想要登錄的項目。

簡言之,方案如下:

  • Standard-2-Project - 包裝測井組件,並且具有依賴於NLog 4.4.11
  • NET-4-Project-A - 用於記錄
  • NET-4-Project-B使用Standard-2-Project - 使用Standard-2-Project用於記錄
  • NET-Core-Project-C - 使用Standard-2-Project進行記錄
  • NET-Core-Project-D - 使用Standard-2-Project用於記錄
  • ... - 使用Standard-2-Project用於記錄

希望有所幫助。

1

對於.NET核心1你需要NLOG 5.

的測試版混亂的部分是在這裏,ASP.NET內核可以在完整的.NET框架(例如.NET 4.6)運行。

NLog.Extensions.Logging適用於ASP.NET Core和.NET Core控制檯應用程序,因此,在完整的.NET框架上運行時,它也適用於ASP.NET Core。

相關問題