Gibt es eine Möglichkeit, mithilfe von Integritätsbedingungen zu überprüfen, ob ein Methodenargument mehr als eine Schnittstelle implementiert?Überprüfen, ob ein Methodenargument mehrere Schnittstellen implementiert
dieses einfache Beispiel, das überprüft, ob tAntwort IBaseSearchResponse umgesetzt hat:
public static TResponse Search<TResponse, TRequest>(TRequest args)
where TResponse : IBaseSearchResponse {}
Aber ich möchte auch wissen, ob es IBaseSearchProps implementiert. Ive versucht, eine Einschränkung hinzufügen, indem Sie Dinge wie tun:
public static TResponse Search<TResponse, TRequest>(TRequest args)
where TResponse : IBaseSearchArgs where TResponse : IBaseSearchProps {}
Aber diese meldet Einschränkungen Klausel bereits verwendet für Typ tAntwort Und:
public static TResponse Search<TResponse, TRequest>(TRequest args)
where TResponse : (IBaseSearchArgs && IBaseSearchProps) {}
dies ist nur illegal Syntax
I Entschuldige dich im Voraus, wenn meine Frage schlecht vorbereitet ist, anderswo geantwortet wurde oder wenn die Antwort in der C# Spezifikation definiert ist ..., ich habe zumindest danach gesucht
ah ... könnte nicht einfacher sein oder mich dümmer fühlen lassen kann es ... – axa