Thanks for the code - I already implemented something similar, but mine just delegates to my existing Project type that loads, caches, and handles search paths on a per-Project basis, while using a shared dictionary to avoid loading an identical assembly more than once.
Note that your example doesn't account for different projects, so you will run into problems as I mentioned in my original post if you have a solution with multiple projects which need different search paths to find their assemblies - you'll end up loading assemblies from the wrong paths, which may or may not work in each situation. You might think it's working, but the day will come when it doesn't for some situation. -- -- mono-cecil
