Joe
Joe

Reputation: 781

How to solve the error "Must use PackageReference"?

After adding WindowsRuntime to a WinForms-project, building the project fails with Error "Must use PackageReference". The build log is more precise:

C:[...]\Visual Studio 2017\Projects\Projectname\packages\Microsoft.Windows.SDK.Contracts.10.0.18362.2005\build\Microsoft.Windows.SDK.Contracts.targets(4,5): error : Must use PackageReference

Here's what I did:

Install-Package Microsoft.Windows.SDK.Contracts

with references to:

Is it maybe a thing with the .NET version? In the project's packages.config there is 4.6 while the project targets 4.5.

<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Microsoft.Windows.SDK.Contracts" version="10.0.18362.2005" targetFramework="net45"/>
<package id="System.Runtime.WindowsRuntime" version="4.6.0" targetFramework="net45" />
<package id="System.Runtime.WindowsRuntime.UI.Xaml" version="4.6.0" targetFramework="net45" />
</packages>

There are no compile errors... only this strange "PackageReference" error.

Upvotes: 64

Views: 55453

Answers (4)

patrick
patrick

Reputation: 16949

VS2017/VS2019 -> Solution Explorer -> right-click References -> "Migrate packages.config to PackageReference"

VS2019 -> Solution Explorer -> right-click packages.config -> "Migrate packages.config to PackageReference"

I think this happens when you add a .NET core library to a .NET standard project.

Upvotes: 155

Lugube
Lugube

Reputation: 120

Go to your .csproj and remove the references to the package. On my case they were at the end of the XML file

Upvotes: 2

Chris
Chris

Reputation: 161

Solution that worked for me was to:

  1. Run a Clean on the project in question
  2. Close Visual Studio
  3. Navigate to the project folder on disk and delete the obj folder
  4. Reopen Visual Studio and Build

Upvotes: 16

Taran
Taran

Reputation: 3221

Could be becuse of nugetpackage, for WPF use WPF one.

Upvotes: 1

Related Questions