public static DbQuery<DbSelectExpression> OrderBy(this DbQuery<DbSelectExpression> dbSelectQuery, Func<DbExpressionFactory, DbExpression> expressionSelector, DbOrderByExpressionType orderByExpressionType)
{
var dbExpression = (DbExpression)DbExpressionFactory.MakeOrderBy(orderByExpressionType, expressionSelector(DbExpressionFactory));
if (!dbSelectQuery.QueryExpression.OrderByExpression.IsNull())
dbExpression = DbExpressionFactory.List(new[] { dbSelectQuery.QueryExpression.FromExpression, dbExpression });
dbSelectQuery.QueryExpression.OrderByExpression = dbExpression;
return dbSelectQuery;
}