Esempio n. 1
0
 /// <summary>
 /// Provides DataTables.AspNet registration for Asp.Net WebApi 2 projects.
 /// </summary>
 /// <param name="requestModelBinder">Request model binder to use when resolving 'IDataTablesRequest' models.</param>
 public static void RegisterDataTables(this HttpConfiguration configuration, ModelBinder requestModelBinder)
 {
     RegisterDataTables(configuration, new Options(), requestModelBinder);
 }
Esempio n. 2
0
 /// <summary>
 /// Provides DataTables.AspNet registration for Asp.Net WebApi 2 projects.
 /// </summary>
 /// <param name="options">DataTables.AspNet options.</param>
 /// <param name="requestModelBinder">Model binder to use when resolving 'IDataTablesRequest' model.</param>
 public static void RegisterDataTables(this HttpConfiguration configuration, IOptions options, ModelBinder requestModelBinder)
 {
     RegisterDataTables(configuration, options, requestModelBinder, null, false);
 }
Esempio n. 3
0
        /// <summary>
        /// Provides DataTables.AspNet registration for Asp.Net WebApi 2 projects.
        /// </summary>
        /// <param name="options">DataTables.AspNet options.</param>
        /// <param name="requestModelBinder">Request model binder to use when resolving 'IDataTablesRequest' models.</param>
        /// <param name="parseRequestAdditionalParameters">Function to evaluate and parse aditional parameters sent within the request (user-defined parameters).</param>
        /// <param name="parseResponseAdditionalParameters">Indicates if additional parameters are sent with the response.</param>
        public static void RegisterDataTables(this HttpConfiguration configuration, IOptions options, ModelBinder requestModelBinder, Func <HttpActionContext, ModelBindingContext, IDictionary <string, object> > parseRequestAdditionalParameters, bool parseResponseAdditionalParameters)
        {
            if (options == null)
            {
                throw new ArgumentNullException("options", "Options for DataTables.AspNet cannot be null.");
            }
            if (requestModelBinder == null)
            {
                throw new ArgumentNullException("requestModelBinder", "Request model binder for DataTables.AspNet cannot be null.");
            }

            Options = options;

            configuration.BindParameter(typeof(IDataTablesRequest), new ModelBinder());

            if (parseRequestAdditionalParameters != null)
            {
                Options.EnableRequestAdditionalParameters();
                requestModelBinder.ParseAdditionalParameters = parseRequestAdditionalParameters;
            }

            if (parseResponseAdditionalParameters)
            {
                Options.EnableResponseAdditionalParameters();
            }
        }