me gustaría implementar una clase genérica de C# que se ve más o menos como sigue:¿Puedo indicar que un parámetro de tipo C# solo debe ser un tipo de interfaz?
abstract class Foobar<T> : AbstractBase, T
{ ... }
Esta falla debido a que C# sólo permitirá tipos después de la clase base sean las interfaces, así que la próxima que este intento:
abstract class Foobar<T> : AbstractBase, T where T : interface
{ ... }
Pero luego me parece que C# no permite esta forma de restricción de tipo. Solo se permiten where T : struct
y where T : class
.
¿Cómo puedo indicar que un parámetro de tipo solo debe ser un tipo de interfaz?
¿Qué estás tratando de lograr? Realmente no puedo pensar en una situación donde tal restricción sería necesaria. – jalf