Example #1
0
 private static void SortAscending(SortOptionArgs sortOption,
                                   SortDescriptor <TIndexItem> descriptor)
 {
     if (string.IsNullOrWhiteSpace(sortOption.ParentPropertyName))
     {
         descriptor.Field(f => f
                          .Field(sortOption.PropertyName)
                          .Ascending()
                          );
     }
     else
     {
         descriptor.Field(f => f
                          .Nested(n => n
                                  .Path(sortOption.ParentPropertyName)
                                  )
                          .Field(sortOption.PropertyName)
                          .Ascending()
                          );
     }
 }
        public SortOptionArgs ComposeSort(DtParameters dtParameters)
        {
            var sort = new SortOptionArgs();

            var translatableProperty = dtParameters.SortColumn.Split('.');

            if (translatableProperty.Length == 2)
            {
                sort.ParentPropertyName = translatableProperty[0];
                sort.PropertyName       = translatableProperty[1];
            }
            else
            {
                sort.PropertyName = dtParameters.SortColumn;
            }

            sort.SortOrder = string.IsNullOrWhiteSpace(dtParameters.SortOrder) || dtParameters.SortOrder == "asc"
                                 ? SortOrder.Ascending
                                 : SortOrder.Descending;

            return(sort);
        }