title: C# - Passing all the method arguments to another method?
body: <p>I've got a class, which has three overloaded methods. Let's say, there is:</p>
  
  <pre><code>class MyChildClass
  {
      public void myMethod(int i)
          { /* do something with i */ }
      public void myMethod(int a, string b)
          { /* get i from a and b and call: */ myMethod(i); }
      public void myMethod(string c, string d)
          { /* get i from c and d and call: */ myMethod(i); }
  }
  </code></pre>
  
  <p>Now I'd like this class to be a private field in other (parent) class, but I need those three methods to be accessible. For now, I just did:</p>
  
  <pre><code>class MyBaseClass
  {
      private MyChildClass myObject = new myChildClass(); // or similar
      public void myMethod(int i) 
          { myObject.myMethod(i);    }
      public void myMethod(int a, string b) 
          { myObject.myMethod(a, b); }
      public void myMethod(string c, string s) 
          { myObject.myMethod(c, d); }
  }
  </code></pre>
  
  <p>Is there a way to implement it as one short method? Something which would look like:</p>
  
  <pre><code>public void myMethod(unknownListOfArgumentsOfDifferentTypes args)
      { myObject.myMethod(args); }
  </code></pre>
  
  <p>I tried to use <code>public void myMethod(params object[] something)</code> but it didn't work. Is it possible, or do I have to "project" every method into another?</p>
  
  <p><strong>EDIT:</strong> Child class has various methods and fields, which I want to be accessible for parent class only. That's why I don't want parent to derive after it. I didn't explain that, sorry if it looked like child class contains only those three methods. Those are the methods I want to be accessible as public methods of parent class.</p>