{"Could not load file or assembly 'AssemblyName, PublicKeyToken=null' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)":"AssemblyName, PublicKeyToken=null"}
I'm getting the message in question as an InnerException.Message
while trying to debug my application after signing the unsigned third-party assemblies it is using.
The weird thing is that I have already signed the assembly shown in the message, the one that can't be loaded.
What could the problem be here? How can I resolve this?
EDIT
Editing to give more information on what I did:
- Signed all the unsigned third-party assemblies my project is referencing.
- Disassembled those assemblies to see if they internally reference any external unsigned assemblies (they didn't)
- Deleted the old unsigned assemblies from the project's reference list, and re-added the newly signed ones.
- Unloaded the project and edited the reference of the assembly that can't be loaded in the .sln XML-styled file by adding the PublicKeyToken that was missing from the assembly reference.
The assembly that throws the exception, btw the project builds fine it's a runtime exception I'm getting on InitializeComponent()
of that assembly, is an open source component with WPF controls (MahApps.Metro). I've found a similar question but none of the answers there fixed the issue.
How to force WPF to use resource URIs that use assembly strong name? Argh!