Convertir un objet en liste générique

J'ai 3 generict type de liste.

List<Contact> = new List<Contact>();
List<Address> = new List<Address>();
List<Document> = new List<Document>();

Et l'enregistrer dans une variable de type objet. Maintenant, je nedd ne jeter Retour à la Liste pour vérifier un foreach, certains comme ceci:

List<Contact> = (List<Contact>)obj;

Mais obj contenu change à chaque fois, et j'ai un peu comme ceci:

List<???> = (List<???>)obj;

J'ai une autre variable courant d'obj Type:

Type t = typeof(obj);

Puis-je faire quelque chose comme ça??:

List<t> = (List<t>)obj;

Obs: j'ai pas le type en cours dans la liste mais j'ai besoin de cast , et je n'ai pas maintenant une autre forme à la place:

List<Contact> = new List<Contact>();

source d'informationauteur JoeLoco