Issue: Throws KeyNotFoundException in https://github.com/castleproject/Core/blob/master/src/Castle.Core/DynamicProxy/Generators/Emitters/AbstractTypeEmitter.cs at method public Type[] GetGenericArgumentsFor(MethodInfo genericMethod) Conditions: When Type name of generic type doesn't match the name of the Type in an interface. Workaround: Change any generic Type names to match the name on the source interface. This happens in Mono and .Net. If a generic method's generic Type name mismatches with its implemented name then this throws in Moq. Original issues incorrectly posted on Moq's GitHub: [here](https://github.com/Moq/moq4/issues/193)