Extendiendo la clase Enumerable en c #?

Tengo una situación para extender la clase Enumerable en c # para agregar el nuevo método de rango que acepta parámetros largos. No puedo definir el método así.

public static IEnumerable<long> Range(this Enumerable source, long start, long length)
{
    for (long i = start; i < length; i++)
    {
        yield return i;
    }
}

Dado que los métodos de extensión son accesibles solo a través de sus objetos. Y me da un error.

'System.Linq.Enumerable': los tipos estáticos no pueden usarse como parámetros

¿Alguien puede aclararme cómo hacer esto?

Nota: Sé que podemos resolverlo fácilmente sin métodos de extensión, pero necesitaba esta clase Enumrable.

Respuestas a la pregunta(5)

Su respuesta a la pregunta