springy76
springy76

Reputation: 3786

How to consume a netstandard2.0 assembly using VS 2015 (in a 4.6.2 library)?

Alternative Title: Is everything older than VS2017.3 deprecated?

I have this single netstandard 2.0 assembly which I have to consume from within an 4.6.2 class library using VS2015(.3).

But this does not compile, I always get:

error MC1000: Unknown build error, 'Cannot resolve dependency to assembly 'netstandard, Version=2.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51' because it has not been preloaded.

I installed the NuGet Package NETStandard.Library and also tried ImplicitlyExpandDesignTimeFacades=false -- did not change anything.


Update:

Now this MC1000 hit me again in another solution where absolutely nothing has to do with netstandard: Everything is using NET 4.6.2. I just did nothing more than applying suggested NuGet package updates:

Before:

  <package id="System.Reflection.TypeExtensions" version="4.3.0" targetFramework="net462" />
  <package id="System.Text.Encoding.CodePages" version="4.3.0" targetFramework="net462" />

After:

  <package id="System.Reflection.TypeExtensions" version="4.4.0" targetFramework="net462" />
  <package id="System.Text.Encoding.CodePages" version="4.4.0" targetFramework="net462" />

Exact same error message as above. IMHO according to SemVer such thing should not happen from 4.3.0 to 4.4.0.

Once again I tried if installing NETStandard.Library NuGet package helped, but did not.

The .NET core 2.0 SDK is installed on this machine. NuGet package managers version is 3.6.0.2511 as suggested by https://blog.nuget.org/20170815/Whats-nu-in-NuGet-with-VS2017-15-3.html

Upvotes: 1

Views: 1352

Answers (1)

Teeeem
Teeeem

Reputation: 36

You need to upgrade your NuGet client to a minimum version of 3.6.

See section Tooling Prerequisistes, https://github.com/dotnet/announcements/issues/24

Nuget download link: https://www.nuget.org/downloads

Upvotes: 1

Related Questions