title: Entity Framework and Sorting
body: <p>I'm trying to sort a list of entities using a GridView in ASP.NET, but I can't seem to get it working following examples. I have a property called Name on my entity, and I'm trying to sort by a specified column if given, or the Name column if the sortExpression is empty.</p>
  
  <pre><code>public static List&lt;Product&gt; GetProducts(int startRowIndex, int maximumRows, string sortExpression) {
      using(var context = new ShopEntities()) {
          var products = context.Products;
          products.OrderBy("it."+(string.IsNullOrEmpty(sortExpression) ? "Name" : sortExpression))
                                         .Skip(startRowIndex)
                                         .Take(maximumRows);
          return products.ToList();
      }
  }
  </code></pre>
  
  <p>I can't get it to sort though. The only other option seems to be doing a switch on the property name for every property in the entity and using a lambda.</p>