First off, itâ€™s really a shame that when an assembly is expecting a certain other assembly that the error messages would indicate which assembly is failing.
Case in point â€“ MvcContrib.Castle was built with Castle.Windsor 1.x – but the only error I get when building my project with the new Castle.Windsor 2.0 was that an assembly was expecting Castle.Windsor 1.x
I was pulling my hair out trying to figure it out â€“ since I updated NHibernate to 2.1 with the new proxy setup (Iâ€™m using Castleâ€™s DynamicProxy) I was fishing around attempting to figure it out.
Luckily I ran a nunit test that uses all those pieces minus the MvcContrib.Castle. It worked. So I was still stumped.
Finally it hit me that the MvcContrib had a register controllers functionality I was using that is sorta an adapter for Castle.Windsor.
So I went to get the latest, assuming that MvcContrib.Castle would be using the latest version of Castle.Windsor 2.0 which finally came out as a non-betaâ€¦ nope.
I ended up getting the contrib source code, and rebuilding the MvcContrib.Castle pieces I needed with Castle.Windsor 2.0.
That is frustrating â€“ most of it because of Visual Studio not giving me the pertinent information needed on why it failed.
Ah well. At least I figured it out and got it to all work in the end 🙂