Operator as and generic classes

I want to make a method: object Execute() { return type.InvokeMember(..); } to accept a generic parameter: T Execute<T>() { return Execute() as T; /* doesn't work: The type