private static void VerifyTypeIsConcrete(Type implementationType)
{
if (!implementationType.IsAbstract && !implementationType.IsArray && implementationType != typeof(object) && !typeof(Delegate).IsAssignableFrom(implementationType))
return;
throw new ActivationException(string.Format("Type {0} should be concrete", implementationType));
}