Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

.NET Core 3.1 - Could not load file or assembly System.Runtime, Version=4.2.2.0

.NET Core 3.1 console app generates error during build -

System.IO.FileNotFoundException: Could not load file or assembly 'System.Runtime, Version=4.2.2.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'. The system cannot find the file specified.

But it works on .NET Core 3.0 version.

I'm using Microsoft.Orleans. This is csproj -

    <Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>netcoreapp3.1</TargetFramework>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.Orleans.Core" Version="3.0.2" />
    <PackageReference Include="Microsoft.Orleans.OrleansCodeGenerator.Build" Version="3.0.2">
      <PrivateAssets>all</PrivateAssets>
      <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
    </PackageReference>
  </ItemGroup>

</Project>
like image 840
Silenus Avatar asked Jan 06 '20 09:01

Silenus


2 Answers

In my case Nischal Nigam's solution didn't worked out, so what I did, I updated the package Microsoft.NET.Sdk.Functions from version 1.0... to 3.0.11 and after that it started working just fine.

like image 132
donatasj87 Avatar answered Nov 03 '22 03:11

donatasj87


I am using Microsoft Visual Studio - Version 16.4.5

Go to the following location and open the devenv.exe.config file in a text editor:

C:\Users\<username>\AppData\Local\Microsoft\VisualStudio\16.0_1832c881\devenv.exe.config

Paste this binding in <configuration> -> <runtime> -> <assemblyBinding>

<dependentAssembly>
  <assemblyIdentity name="System.Runtime" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
  <bindingRedirect oldVersion="0.0.0.0-5.0.0.0" newVersion="4.0.0.0"/>
</dependentAssembly>

After this, save the file and restart Visual Studio.

like image 7
Nishchal Nigam Avatar answered Nov 03 '22 02:11

Nishchal Nigam