203 votes

Passez un System.Type instancié comme un paramètre de Type pour une classe générique

Le titre est peu obscur. Ce que je veux savoir c’est si c’est possible :

De toute évidence, MyGenericClass est décrit comme :

À l’heure actuelle, le compilateur plaint que « l’espace de noms ou de type « myType » est introuvable. » Il doit y avoir un moyen de le faire.

239voto

Jon Skeet Points 692016

Vous ne pouvez pas faire cela sans réflexion. Toutefois, vous pouvez le faire avec réflexion. Voici un exemple complet :

16voto

JaredPar Points 333733

Malheureusement non il n’y pas. Des arguments génériques doivent pouvoir être résolues au moment de la compilation comme 1) un type valide ou 2) un autre paramètre générique. Il n’y a aucun moyen de créer des instances génériques basés sur des valeurs d’exécution sans le gros marteau d’à l’aide de la réflexion.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X