J'utilise une API qui a un objet qui renvoie IEnumerable<T>
, donc quelque chose comme Object.GetEnum<T>
.Passer dans <T> à une méthode où GetEnum <T> est appelé
J'ai une méthode qui à l'intérieur appellera GetEnum mais je veux ajouter aux paramètres de la méthode la possibilité de passer le type de paramètre. Ainsi, par exemple, je veux faire:
private void myMethod(apiClass??? apiclass)
{
IEnumerable<itemType> enumX = ObjectGetEnum<itemType>
}
private void Main()
{
myMethod(apiClass1);
myMethod(apiClass2);
}
Donc, comme ci-dessus, je ne sais pas ce que le type de paramètre doit être myMethod ou comment écrire le code qui est le recenseur. J'ai essayé de passer "apiClass", la classe dont apiClass1 et apiClass2 héritent. Mais ensuite, il s'est coincé là sur ce qu'il faut faire ... et je ne pense pas que ça marche vraiment de toute façon. Donc, je ne sais pas si je ne sais pas comment faire ça en C#, ou si c'est possible, .... ou peut-être qu'il me manque quelque chose dans l'API (ou il manque quelque chose à l'API pour faciliter cela).
Merci FKC
S'il vous plaît préciser la question - que voulez-vous itemType être? Qu'est-ce que apiClass veut dire exactement? Il semble que vous souhaitiez faire de myMethod une méthode générique, mais je ne peux pas vraiment le dire à partir de la question. –