问题
.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>
回答1:
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.
回答2:
ReubenBond helped me with solution. I used Microsoft.Orleans.CodeGenerator.MSBuild
package instead of Microsoft.Orleans.OrleansCodeGenerator.Build
.
回答3:
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.
来源:https://stackoverflow.com/questions/59610009/net-core-3-1-could-not-load-file-or-assembly-system-runtime-version-4-2-2-0