簡體   English   中英

.NET Core解決方案設計在參考舊版本庫時遇到問題

[英].NET Core Solution design having issues with reference to old version libraries

我正在設計一個基本應用程序,在這里我需要利用我使用Framework 4.5編寫的現有.Net庫。

我正在嘗試設計以下結構:

-CODE
  -Business.csproj
     - TargetFramework - netstandard1.6          
     - ProjectReference - domain.csproj built on .NET 45 framework.
  - WebApi.csproj
     -TargetFramework - netcoreapp1.1    
     - ProjectReference - Business.csproj 
-TEST
  - Business.Tests.csproj
     - TargetFramework - netstandard1.1          
     - ProjectReference - domain.csproj built on .NET 45 framework.  
     - ProjectReference - Business.csproj built on netstandard1.6 framework. 
  - WebAPI.Tests.csproj
     -TargetFramework - netcoreapp1.1    
     - ProjectReference - Business.csproj 
     - ProjectReference - WebApi.csproj 

理解:

  1. Business.csproj的目標是框架netstandard1.6 ,因為.NET Framework (4.5.x).NET Core實現了netstandard1.6
  2. WebApi.csproj面向框架netcoreapp1.1因為它需要ASP.NET Core功能並引用基於netstandard1.6構建的項目Business.csproj

現在,當嘗試還原軟件包時,出現以下錯誤:

  1. 一個或多個軟件包與.NETCoreApp,Version = v1.1不兼容。

  2. 軟件包Microsoft.Composition 1.0.27與netcoreapp1.1(.NETCoreApp,Version = v1.1)不兼容。 軟件包Microsoft.Composition 1.0.27支持:Portable-net45 + win8 + wp8 + wpa81(.NETPortable,Version = v0.0,Profile = Profile259)
    錯誤一個或多個軟件包與.NETCoreApp,Version = v1.1不兼容。

如果您使用的是project.json,則需要將導入部分添加到project.json:

"frameworks": {
    "netcoreapp1.1": {
      "dependencies": {
        "Microsoft.NETCore.App": {
          "type": "platform",
          "version": "1.1.0"
        }
      },
      "imports": "portable-net45+win8+wp8+wpa81"
    }
  }

如果您使用的是.csproj,則需要修改.csproj文件,如下所示:

<PackageTargetFallback Condition=" '$(TargetFramework)' == 'netcoreapp1.1' ">$(PackageTargetFallback);portable-net45+win8</PackageTargetFallback> 

暫無
暫無

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

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