2009-02-26 4 views
179

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 cela ne fonctionne pas. Est-ce une limitation .NET? Est-il possible d'avoir plusieurs contraintes pour différents paramètres?Méthode générique avec plusieurs contraintes

public TResponse Call<TResponse, TRequest>(TRequest request) 
    where TRequest : MyClass, TResponse : MyOtherClass 

Répondre

280

Il est possible de faire cela, vous avez juste la syntaxe légèrement fausse. Vous avez besoin d'un where pour chaque contrainte plutôt que de les séparer par une virgule:

public TResponse Call<TResponse, TRequest>(TRequest request) 
    where TRequest : MyClass 
    where TResponse : MyOtherClass 
Questions connexes