Esiste comunque una forzatura di un vincolo per una definizione generica per implementare una "interfaccia generica" ... ovvero, voglio che la classe supporti il passaggio di un'interfaccia e una classe generica che lo vincola in modo che la classe implementa l'interfaccia. Per esempio, se io dico:Implementazione di un'interfaccia generica in C#
MyGenericClass<IMyInterface, MyImplementation>.DoSomething();
che dovrebbe essere vincolato in modo che MyImplementation implementa IMyInterface
Per quanto ne so che si può ottenere con
public class Dynamic_Loader<T, S> where S: T
Ora, c'è comunque di anche forza T per essere un'interfaccia?
Edit: Lo scopo di questo è stato quello di avere qualcosa di simile:
private static List<T> interfaceList = new List<T>();
public static List<T> InterfaceList {get { return interfaceList;}}
public static void Add(S input) { interfaceList.Add(input);}
e avere la lista ristretta ai soli interfacce (in quanto deve restituire le implementazioni di alcune interfacce)
Oh, stavo per questo: Lista public static interfacelist = new List ; vuoto statico pubblico Aggiungi (ingresso S); E sì, funzionerà anche se T è solo una classe base ma il client dovrebbe ottenere interfacce, non classi base. –