Gibt es sowieso eine Constraints für eine generische Definition zu erzwingen, um eine "generische Schnittstelle" zu implementieren ... das heißt, ich möchte die Klasse die Übergabe einer Schnittstelle und eine generische Klasse damit zu beschränken Die Klasse implementiert die Schnittstelle. Zum Beispiel, wenn ich sage:Force generische Schnittstellenimplementierung in C#
MyGenericClass<IMyInterface, MyImplementation>.DoSomething();
Das so dass MyImplementation implementiert IMyInterface
Was gezwungen werden sollte, wie ich weiß, dass durch
public class Dynamic_Loader<T, S> where S: T
Jetzt erreicht werden kann, ist es auch ohnehin zwingen T, eine Schnittstelle zu sein?
Edit: Der Zweck dieser war wie etwas zu haben:
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);}
und die Liste auf Schnittstellen beschränkt haben (da es angeblich Implementierungen von bestimmten Schnittstellen zurückzukehren)
Oh, ich war für diese gehen: public static List interfacelist = new List ; public static void Hinzufügen (S input); Und ja, es wird auch funktionieren, wenn T nur eine Basisklasse ist, aber der Client sollte Schnittstellen, nicht Basisklassen bekommen. –