コード例 #1
0
        /// <summary>
        /// Processa a fonte de dados.
        /// </summary>
        private void ProcessDataSource()
        {
            var binder         = new DataSourceRequestModelBinder();
            var controller     = ViewContext.Controller;
            var bindingContext = new ModelBindingContext()
            {
                ValueProvider = controller.ValueProvider
            };
            var request = (DataSourceRequest)binder.BindModel(controller.ControllerContext, bindingContext);

            DataSource.Process(request, false);
        }
コード例 #2
0
        public object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext)
        {
            // Get an instance of the original kendo model binder and call the binding method
            var baseBinder = new DataSourceRequestModelBinder();
            var request    = (Kendo.Mvc.UI.DataSourceRequest)baseBinder.BindModel(controllerContext, bindingContext);

            if (request.Filters != null && request.Filters.Count > 0)
            {
                var transformedFilters = request.Filters.Select(TransformFilterDescriptors).ToList();
                request.Filters = transformedFilters;
            }

            return(request);
        }
コード例 #3
0
        public object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext)
        {
            DataSourceRequestModelBinder originalBinder = new DataSourceRequestModelBinder();

            DataSourceRequest       originalRequest = (DataSourceRequest)originalBinder.BindModel(controllerContext, bindingContext);
            CustomDataSourceRequest request         = new CustomDataSourceRequest()
            {
                Aggregates = originalRequest.Aggregates,
                Filters    = originalRequest.Filters,
                Groups     = originalRequest.Groups,
                PageSize   = originalRequest.PageSize,
                Page       = originalRequest.Page,
                Sorts      = originalRequest.Sorts
            };

            string tableName;
            string parentFieldName;
            string parentFieldValue;

            if (TryGetValue(bindingContext, "tableName", out tableName))
            {
                request.TableName = tableName;
            }

            if (TryGetValue(bindingContext, "parentFieldName", out parentFieldName))
            {
                request.ParentFieldName = parentFieldName;
            }

            if (TryGetValue(bindingContext, "parentFieldValue", out parentFieldValue))
            {
                request.ParentFieldValue = parentFieldValue;
            }

            return(request);
        }