¿Por qué debo redeclarar la restricción de tipo en una subclase genérica?

Recientemente intenté crear una subclase genérica implementando una interfaz genérica.

public interface IModule<T> where T : DataBean { ..... }
public class Module<T> : IModule<T> where T : DataBean { .... } 

Parece que no puedo confiar en ninguna de las restricciones de T como se definieron en la interfaz base, y necesito volver a declararlas yo mismo.

MSDN solo proporcionado:

Al utilizar los parámetros de tipo genérico de la subclase, debe repetir las restricciones estipuladas en el nivel de clase base en el nivel de subclase. Por ejemplo, restricción de derivación

¿Por qué no es posible inferir las restricciones de la clase / interfaz base?

Respuestas a la pregunta(3)

Su respuesta a la pregunta