.NETFramework4.6.1引用一个目标为.NETstandard2.0的classlib

时间:2017-05-03 23:16:58

标签: asp.net visual-studio .net-framework-version .net-standard

我使用Target框架创建了一个asp.net webapp:.NET Framework 4.6.1 和VS2017中的目标框架:.NET Standard 2.0的类库。 我希望它能正常工作,因为document说有可比的: enter image description here 但是我收到了一个错误:

  

项目'c:\ users \ ConfusedDev \ documents \ visual studio 2017 \ Projects \ ClassLibrary \ ClassLibrary \ ClassLibrary.csproj'目标'.NETStandard,Version = v2.0'。它不能被针对'.NETFramework,Version = v4.6.1'的项目引用。

我对这个构建解决方案缺少什么?

2 个答案:

答案 0 :(得分:1)

https://dotnet.myget.org/feed/dotnet-core/package/nuget/NETStandard.Library

您使用的软件包包含.net标准版v2的某种存根:

  <group targetFramework=".NETStandard2.0">
    <dependency id="Microsoft.NETCore.Platforms" version="1.1.0" />
    <dependency id="Microsoft.Packaging.Tools" version="1.0.0-preview2-25303-01" />
  </group>

它只是指向.NET Core。但是,您可以尝试更低版本的.net标准。它们似乎在2.0.0-preview2-25303-01包中正确声明。

答案 1 :(得分:0)

使用VS 2017时遇到了此问题。我在.Net 4.6目标解决方案中添加了一些.Net标准类库项目。所以我无法建立解决方案。

我添加了相应数量的.Net框架类库项目。然后,我将所有类剪切并粘贴到相应的新项目(.Net框架)中,并删除所有涉及的项目(.Net标准框架)并构建解决方案。