Falando sobre reflection um necessidade que encontrei e vou colocar aqui é definir um parametro generico de uma classe por um Type, para isso podemos usar o metodo MakeGenericType. O conteudo é bem simples então vou apenas postar o codigo de como fazer sem muita necessidade de explicação.
Type typeGenericList = typeof(MyClass); var ListWithoutType = typeof(IList<>); // this is a list generic without the generic type set var ListWithType = ListWithoutType.MakeGenericType(tipoEntidade); // this is a list generic with the generic parametier of MyClass IList<MyClass>