[英]Reference .net461 assembly from netstandard 2.0
根據Microsoft (“.NET Standard的.NET .NET庫”),我們可以從.NetStandard 2.0項目中引用完整的框架庫<= .NET 4.6.1,以幫助從Visual Studio 15.3開始遷移現有代碼
那么為什么以下不起作用呢?
NetStandard / NetStandard.csproj:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\FullFramework\FullFramework.csproj" />
</ItemGroup>
</Project>
FullFramework / FullFramework.csproj
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net461</TargetFramework>
</PropertyGroup>
</Project>
給我以下錯誤:
error NU1201: Project FullFramework is not compatible with netstandard2.0 (.NETStandard,Version=v2.0). Project FullFramework supports: net461 (.NETFramework,Version=v4.6.1)
error : Project '..\FullFramework\FullFramework.csproj' targets 'net461'. It cannot be referenced by a project that targets '.NETStandard,Version=v2.0'.
如果您引用使用“舊”.csproj格式(並且目標是.NET 4.6.1或更低版本)的項目,或者您直接引用庫(.dll文件),但是對於未知(對我來說)原因,則此功能有效如果您使用“新”格式的.csproj引用項目(如您的問題),則可以正常工作。 有人可能會爭辯說,因為這個功能目標是為了更容易移植舊代碼 - 我們認為不支持新格式的項目,我認為這更像是一種疏忽而非故意。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.