C# Error
CS0737 – ‘{0}’ does not implement interface member ‘{1}’. ‘{2}’ cannot implement an interface member because it is not public.
Reason for the Error & Solution
‘type name’ does not implement interface member ‘member name’. ‘method name’ cannot implement an interface member because it is not public.
A method that implements an interface member must have public accessibility. All interface members are public
.
To correct this error
- Add the access modifier to the method.
Example
The following code generates CS0737:
// cs0737.cs
interface ITest
{
// Default access of private with no modifier.
int Return42();
// Try the following line instead.
// public int Return42();
}
struct Struct1 : ITest // CS0737
{
int Return42() { return (42); }
}
public class Test
{
public static int Main(string[] args)
{
Struct1 s1 = new Struct1();
return (1);
}
}