I need to take a built version of an C# application and change one of the reference dll's. What is the best way to do this, I have specific version turned off on the reference dll but as soon as I test replacing the dll with a newer version, I get the "Could not load file or assembly XXXXX, Version=XXXXX. Is there a way to stop the loader from caring about the version of the dll so the dll will just attempt to load?
相关问题
- Sorting 3 numbers without branching [closed]
- Graphics.DrawImage() - Throws out of memory except
- Why am I getting UnauthorizedAccessException on th
- 求获取指定qq 资料的方法
- Why does const allow implicit conversion of refere
Yes, you can do this - see the MSDN article Redirecting Assembly Versions.
You should read the whole document, but it essentially involves either the assembly's publisher creating a 'publisher policy file' or the consumer adding a
bindingRedirect
to anapp.config
file, like this (copied directly from the article):A few notes:
If you haven't explicitly specified your culture (as many don't), it will be "neutral" rather than "en-us".
If you don't already know it, you can get the assembly's public key token using the strong name utility, like this:
sn -t [AssemblyPath]