C# Error
CS0738 – ‘{0}’ does not implement interface member ‘{1}’. ‘{2}’ cannot implement ‘{1}’ because it does not have the matching return type of ‘{3}’.
Reason for the Error & Solution
‘type name’ does not implement interface member ‘member name’. ‘method name’ cannot implement ‘interface member’ because it does not have the matching return type of ‘ type name’.
The return value of an implementing method in a class must match the return value of the interface member that it implements.
To correct this error
- Change the return type of the method to match that of the interface member.
Example
The following code generates CS0738 because the class method returns void
and the interface member of the same name returns int
:
using System;
interface ITest
{
int TestMethod();
}
public class Test: ITest
{
public void TestMethod() { } // CS0738
// Try the following line instead.
// public int TestMethod();
}