title: multilevel inheritance with same method names c#
body: <p>I have been stuck in a situation here,It is an existing code which was handed over to me,</p>
  
  <pre><code>class A
  {
      public string helloworld()
      {
          return "A";
      }
  }
  
  class B : A
  {
      public string helloworld()
      {
  
          return "B";
      }
  }
  
  class C: B
  {
      public string hi()
      {
      if(condition1)
       {
          return helloworld(); // From class A
       }
      else
       {
          return helloworld(); // From class B
       }
      }
  }
  </code></pre>
  
  <p>The scenario is such that on a certain condition it should return the method from class A else it should return method from class B
  How do I go about achieving this as the output is always 'B'</p>