Pregunta

Tengo esta interfaz

public interface TestInterface
{
   [returntype] MethodHere();
}

public class test1 : TestInterface
{
   string MethodHere(){
      return "Bla";
   }
}

public class test2 : TestInterface
{
   int MethodHere(){
     return 2;
   }
}

¿Hay alguna manera de hacer [returntype] dinámica?

¿Fue útil?

Solución

Cualquiera de declarar el tipo de retorno como objeto, o utilizar una interfaz genérica:

public interface TestInterface<T> {
    T MethodHere();
}

public class test3 : TestInterface<int> {
   int MethodHere() {
      return 2;
   }
}

Otros consejos

En realidad, no dinámico , pero se podía hacer más genérica:

public interface TestInterface<T>
{
    T MethodHere();
}

public class Test1 : TestInterface<string>
... // body as before
public class Test2 : TestInterface<int>
... // body as before

Si eso no es lo que está buscando, por favor, dar más detalles acerca de cómo le gustaría ser capaz de utilizar de la interfaz.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top