Example #1
0
        public override object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext)
        {
            jqDataTableInput    _input = (jqDataTableInput)base.BindModel(controllerContext, bindingContext);
            ValueProviderResult vResult;

            // create array for sort values based on column count

            _input.iSortCol_ = new int[(int)_input.iSortingCols];
            _input.sSortDir_ = new string[(int)_input.iSortingCols];
            for (var i = 0; i < _input.iSortingCols; i++)
            {
                _input.iSortCol_[i] = GetValue <int>(bindingContext, "iSortCol_" + i.ToString()).Value;

                bindingContext.ValueProvider.TryGetValue("sSortDir_" + i.ToString(), out vResult);
                if (vResult != null)
                {
                    _input.sSortDir_[i] = (String)vResult.ConvertTo(typeof(String));
                }
            }

            _input.sSearch_     = new string[(int)_input.iColumns];
            _input.bSearchable_ = new bool?[(int)_input.iColumns];
            _input.bSortable_   = new bool?[(int)_input.iColumns];

            _input.mDataProp_ = new string[(int)_input.iColumns];

            //_input.bEscapeRegex_ = new bool?[(int)_input.iColumns];

            // get results based on column number in name
            // zero based array list

            for (var i = 0; i < _input.iColumns; i++)
            {
                bindingContext.ValueProvider.TryGetValue("sSearch_" + i.ToString(), out vResult);
                if (vResult != null)
                {
                    _input.sSearch_[i] = (String)vResult.ConvertTo(typeof(String));
                }


                bindingContext.ValueProvider.TryGetValue("mDataProp_" + i.ToString(), out vResult);
                if (vResult != null)
                {
                    _input.mDataProp_[i] = (String)vResult.ConvertTo(typeof(String));
                }

                _input.bSearchable_[i] = GetValue <bool>(bindingContext, "bSearchable_" + i.ToString());
                _input.bSortable_[i]   = GetValue <bool>(bindingContext, "bSortable_" + i.ToString());
            }



            return(_input);
        }
Example #2
0
 public DataTablesActionResult(IQueryable <TSource> source, jqDataTableInput param)
 {
     this.queryableData = source;
     this.param         = param;
 }
Example #3
0
 public DataTablesActionResult(IQueryable <TSource> source, jqDataTableInput param, Expression <Func <TSource, bool> > preFilter)
     : this(source, param)
 {
     this.preFilter = preFilter;
 }
Example #4
0
 public static DataTablesActionResult <T> Create <T>(IQueryable <T> source, jqDataTableInput param)
 {
     return(new DataTablesActionResult <T>(source, param));
 }