cecil
cecil copied to clipboard
.NET Framework 4.8.1 - Failed to resolve assembly: netstandard, Version=2.0.0.0
var resolver = new DefaultAssemblyResolver();
var asm = resolver.Resolve(new AssemblyNameReference("netstandard", new Version("2.0")));
var module = asm.MainModule;
This code successfully resolves the assembly when executed from a .NET 6 app, but it fails in a .NET 4.8.1 app:
Failed to resolve assembly: 'netstandard, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null'
Missing PublicKeyToken.
@pengweiqhca that doesn't matter.
DefaultAssemblyResolver
is not able to resolve many assemblies if you check its source code (and BaseAssemblyResolver
). You need to add search directories to guide it.
You might read https://github.com/jbevain/cecil/discussions/802 to study a similar case.