C# – Members of interface’s methods have different types

cinterfacemembertypes

I have this interface

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

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

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

Is there any way to make [returntype] dynamic?

Best Answer

Either declare the return type as Object, or use a generic interface:

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

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