public void OrderBy(string tableName, string fieldName, bool desc = false)
        {
            var order = Adapter.Field(tableName, fieldName);

            if (desc)
            {
                order += " DESC";
            }

            OrderByList.Add(order);
        }
 internal OrderByList ProcessOrderBy()
 {
     var list = new OrderByList();
     if (!string.IsNullOrWhiteSpace(orderByClause))
     {
         var orderByItems = orderByClause.Split(new [] { "," }, StringSplitOptions.RemoveEmptyEntries);
         foreach (var item in orderByItems)
         {
             var parts = item.Split(new [] { " " }, StringSplitOptions.RemoveEmptyEntries);
             if (parts.Length == 1)
                 list.Add(new OrderByNode(parts[0], Direction.Asc));
             if (parts.Length == 2)
             {
                 var direction = string.Equals(parts[1], "desc", StringComparison.OrdinalIgnoreCase) ? Direction.Desc : Direction.Asc;
                 list.Add(new OrderByNode(parts[0], direction));
             }
         }
     }
     return list;
 }