Por que preciso redefinir a restrição de tipo na subclasse genérica

Recentemente, tentei criar uma subclasse genérica implementando uma interface genérica.

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

Parece que não posso confiar em nenhuma das restrições de T, conforme definidas na interface base, e preciso declará-las pessoalmente.

MSDN apenas forneceu:

Ao usar os parâmetros de tipo genérico da subclasse, você deve repetir quaisquer restrições estipuladas no nível da classe base no nível da subclasse. Por exemplo, restrição de derivação

Por que não é possível inferir as restrições da classe / interface base?

questionAnswers(3)

yourAnswerToTheQuestion