EasyQuery client-side views
/fundamentals/easyquery-client-side-viewsStarting from version 5.0 EasyQuery.JS introduces the concept of a view . "View" - is a set of different EasyQuery widgets assembled to work together on some web page to cover a particular use-case. There are several views available out-of-the-box: AdvancedSearchView ReportView DataFilterView
Build query by code on the client-side
/how-to/build-query-by-code-on-clientsideHere you can find an example of JavaScript code with explanation how to add columns to a current query on client-side.
Attaching extra data to a query on the client-side
/tutorials/attaching-extra-data-to-query-client-sideSometimes it's necessary to attach some extra data to each query (based on some user's input on the client-side) and then use that extra data on query execution. For example, user might want to specify a date (or a period of time) as an additional filter to the any query. To add some extra data you can use beforeExecuteQuery event handler which can be defined on view initialization: Now if you check in Developer Tools (on Network tab), each .../execute request now includes ad additional data object in the request payload. Now to process this additional request data you can create your own implementation of EasyQueryManager and override its ExecuteQueryCore method. Here is an example: Here we just reconfigure our current query and add in it an additional condition group with a bunch of conditions like SomeColumns contains 'filter text' Finally, you need to register your manager class on EasyQuery middleware initialization: NB: Please note that you can read the ClientData property in any method of your custom manager.
Custom client-side dialogs
/tutorials/custom-javascript-dialogs-saving-loadingUsers who use some other dialogs libary usually want to replace those default dialogs with their own. We are going to replace those default dialogs with nice HTML dialogs made with JQuery UI dialogs library. The approach we will use is quite simple: our AdvancedSearchView JavaScript class has several methods which can be "overriden" to replace the default behavior with your own implemenation of those dialogs. In case of using JQuery dialogs we need to define some placeholders (read div elements) on our page where our new dialogs will be rendered. Here is an example: NB: Please note that this step is specific for JQuery dialogs.
Managing data formats
/tutorials/managing-data-formatsThis article shows how to implement some particular tasks with your query
EasyQuery.NET 5.4.1 + EasyQuery.JS 6.1.0 release notes
/release-notes/easyquery-net-5-4-1-easyquery-js-6-1-0Better performance It takes less time and memory for the new grid to render the same amount of data. It's easier now to define the styles for different parts of the grid and to set custom styles for each column or even for a particular cell. The code of our new grid was moved to a separate NPM package ( @easydata/ui ) and so, can be used even without EasyQuery at all. This new widget allows us to define different views for your result set. As already said, our server-side API code (EasyQuery middleware for .NET Core and WebAPI controller for .NET 4.x) was updated to support the new data format and other changes in EasyQuery.JS 6.1.0 Version 5.4.1 also includes a possibility to save/load queries to/from the files on the visitor's computer.
Query saving and loading
/tutorials/query-saving-and-loadingEasyQuery has built-in means for query saving and loading. Here we are going to describe the most common approaches for solving this task
Getting started for ASP.NET Core + Vue project
/getting-started/aspnet-core-vueHow to use EasyQuery library in Vue.js project with ASP.NET Core backend.
Version 5.1 release notes
/release-notes/version-5-1Version 5.1 is a minor update to version 5.0 which fixes several small bugs and brings few new classes to support authentication/authorization procedures for EasyQuery middleware actions. Core library 1. IEqAuthProvider interface Version 5.1 introduces IEqAuthProvider interface which defines the structure of the authentication provider class
Getting started for ASP.NET Core + React project
/getting-started/aspnet-core-reactHow to use EasyQuery library in React.js project with ASP.NET Core backend.
Version 5.0 release notes
/release-notes/version-5-0Version 5.0 is a completely rewritten major update of EasyQuery which now can be used in any ASP.NET Core (version 2.0 and higher) project and with almost any frontend platform (MVC, Razor pages, Angular, React, Vue, etc). There are a lot of changes both on the server-side part and in the client-side library (EasyQuery.JS). Below we will describe the most important ones: Core library
EasyQuery ASP.NET - using jQuery widgets on WebForms project
/getting-started/sample-webforms-javascript-webserviceIn this article, you can find the instructions how to replace native WebForms with our jQuery widgets, with extract examples
How to save/load queries to/from database
/how-to/mvc-save-load-query-databaseFind out how to change this default behavior and save/load queries to any other storage
Introduction to value editors
/fundamentals/about-data-editorsFor example, value editor allows you to define a list of available values - so your users will be able to select the value from a drop-down list. "Custom list" value editor raises an event which can be processed either on the client-side or on the server. All other editions of EasyQuery (WinForms, WebForms, WPF or Silverlight) has ListRequest event in QueryPanel control which is raised when a user adds an attribute (or operator) with Custom List or SQL list value editor assigned to that attribute/operator. Here we show how you can filter the returned list according to the value specified for some other attribute. If such condition is defined - we get the value (country code) from it and use that value as a filter for the list of regions.
Getting started with EasyQuery in ASP.NET Core + Angular project
/getting-started/aspnet-core-angularHow to add ad-hoc reporting or data-filtering functionality to your ASP.NET Core project with Angular frontend.
Dynamic queries for ASP.NET Core projects with Entity Framework Core
/tutorials/dynamic-queries-ui-aspnet-core-entity-frameworkIt takes a few minutes to add a new page with all necessary UI for building dynamic queries and to setup a middleware that will process all requests from that page, convert those request to the queries to your DB and return the result set back for visualization. This step is necessary to get the trial keys for EasyQuery framework. One for ASP.NET Core packages and another one - for EasyQuery.JS scripts. To simplify this task EasyQuery includes a Razor UI library package ( Korzh.EasyQuery.RazorUI ) that contains several predefined pages which you can use in your projects. For example, there is an "advaced search" page which is available via /EasyQuery/AdvancedSearch .
EqExpression class
/api-reference-5x/korzh-easyquery-namespace/eqexpression-classRepresents common expression object.
EqExpression class
/api-reference/korzh-easyquery/korzh-easyquery-namespace/eqexpression-classRepresents common expression object.
Getting started for ASP.NET Core + MVC or Razor pages
/getting-started/aspnet-core-razorHow to use install EasyQuery to your ASP.NET Core project with Razor Pages or MVC.