public static bool Is(this object o, IEnumerable<Type> types)
return types.Any(t => o is t);
The problem is that the
is operator requires an object on the left and a type name on the right. A literal type name, not an instance of class System.Type.
From your code, I guess that what you want to do is check if a certain object is an instance of some type represented by its System.Type. In this case, you need to use the IsInstanceOfType method of class Type
return types.Any(t => t.IsInstanceOfType(o));