Unable to reference PCL Project in Unit Test Project in VS2019 - Xamarin

49 views Asked by At

Incompatible Target Framwork

How do I fix this issue ? Unable to add PCL reference to my Unit Test Proj.

PCL proj is using framework NetStandardLib v2.1

1

There are 1 answers

0
ToolmakerSteve On

Testing this, NUnit Test project doesn't let you switch between Framework and Core once you have created it. Perhaps because different PackageReferences are needed.

Safest fix is to create a new NUnit Test project. But this time, when it asks for target Framework, pick a .Net core one. Probably pick the highest number it offers (Core 3.1).

Then copy or move all your test source files into it.


Looking at a Framework Test Project vs a Core one, these are the lines that are different.
Framework:

  <PropertyGroup>
    <TargetFramework>net48</TargetFramework>
...
  <ItemGroup>
    <PackageReference Include="NUnit" Version="3.12.0" />
    <PackageReference Include="NUnit3TestAdapter" Version="3.16.1" />
    <PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.5.0"/>
  </ItemGroup>
...

Core:

  <PropertyGroup>
    <TargetFramework>netcoreapp3.1</TargetFramework>
...
  <ItemGroup>
    <PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.1.0" />
    <PackageReference Include="NUnit" Version="3.13.3" />
    <PackageReference Include="NUnit3TestAdapter" Version="4.2.1" />
    <PackageReference Include="NUnit.Analyzers" Version="3.3.0" />
    <PackageReference Include="coverlet.collector" Version="3.1.2" />
  </ItemGroup>
...