When the same assembly is found in two separate ways, the AssemblyName differs.
I've been investigating assembly versions to tackle assembly binding redirect difficulties in a.NET 4.7.2 app. I've been through hundreds of assemblies by this point, but one, in particular, has been very upsetting. Depending on how I retrieve the AssemblyName, the assembly System.ValueTuple.dll returns a different AssemblyName (particularly the Version changes). The two following methods yield identical AssemblyName objects for the other hundreds of assemblies. The first returns a Version of 4.0.0.0 while the second returns a value of 4.0.3.0 for System.ValueTuple.dll.
GetName();
var assemblyName2 = AssemblyName.GetAssemblyName(filePath); / Method 2
AssemblyName1 and assemblyName2 are both of the same Type, have the same Name, and have the same public key, but their versions differ. This is the first time I've ever seen anything like it.
Does anyone have any idea what's going on here?