Méthode générique avec de multiples contraintes
J'ai une méthode générique qui a deux paramètres génériques. J'ai essayé de compiler le code ci-dessous mais ça ne fonctionne pas. Est-ce une .NET limitation? Est-il possible d'avoir de multiples contraintes pour les différents paramètres?
public TResponse Call<TResponse, TRequest>(TRequest request)
where TRequest : MyClass, TResponse : MyOtherClass
Vous devez vous connecter pour publier un commentaire.
Il est possible de le faire, vous avez juste la syntaxe un peu mal. Vous avez besoin d'un
pour chaque contrainte, plutôt qu'en les séparant par une virgule:
En plus de la principale réponse par @LukeH, j'ai problème avec l'injection de dépendance, et il m'a fallu un certain temps pour résoudre ce problème. Il vaut la peine de partager, pour ceux qui rencontreraient le même problème:
Il est résolu de cette façon. dans des récipients/services de la clé est typeof et la virgule (,)
Cela a été mentionné dans cette réponse.
En plus de la principale réponse par @LukeH avec une autre utilisation, nous pouvons utiliser plusieurs interfaces au lieu de la classe. (Une classe et n le comte interfaces), comme cela
ou