I\'m having a similar problem that was asked here: LINQ to Entities does not recognize the method 'System.String ToString()' method, and this method cannot be trans
Instead of using reflection, you should dynamically create an Expression> and pass it to OrderBy.
Expression>
OrderBy
Take a look here to understand how create a dynamic query.