title: Best way to Create method that accept field Name list
body: <p>Queryable has method OrderBy(this IQueryable source, Expression> keySelector). </p>
  
  <p>I need such a method that input multi key not one key. the OrderBy method KeySelector used for one field, but my method will accept many field name.</p>
  
  <p>I'm created method as follow, but I'm not sure this is best way to do that:</p>
  
  <pre><code>class Foo&lt;T&gt;
  {
      public void MyMethod(Expression&lt;Func&lt;T, Object&gt;&gt; selector)
      {
          List&lt;string&gt; props = ((NewExpression)selector.Body).Members.Select(p =&gt; p.Name).ToList();
         //some work with props
      }
  }
  
  Foo&lt;ClassA&gt; foo = new Foo&lt;ClassA&gt;();
  foo.MyMethod(u =&gt; new { u.MyProperty, u.MyProperty2 });
  </code></pre>
  
  <p>are exists better pattern than this? or this is correct.</p>