CS0505 de erro do compilador

Mensagem de erro

'member1': não é possível substituir porque 'member2' não é uma função

Uma declaração de classe tentou substituir um não-método na classe base.Substituições devem corresponder ao tipo de membro.Se um método com o mesmo nome de um método em uma classe base for desejado, use novo (e não Substituir) na declaração de método na classe base.

O exemplo a seguir gera CS0505:

// CS0505.cs
// compile with: /target:library
public class clx
{
   public int i;
}

public class cly : clx
{
   public override int i() { return 0; }   // CS0505
}