The keyword new is required on 'member1' because it hides inherited member 'member2'
A variable was declared with the same name as a variable in a base class. However, the new keyword was not used. This warning informs you that you should use new; the variable is declared as if new had been used in the declaration.
The following sample generates CS0108:
using System; namespace x { public class clx { public int i = 1; } public class cly : clx { public static int i = 2; // CS0108, use the new keyword // the compiler parses the previous line as if you had specified: // public static new int i = 2; public static void Main() { Console.WriteLine(i); } } }