Skip to content

Commit 435001d

Browse files
committed
readme update
1 parent dfb1d33 commit 435001d

File tree

1 file changed

+15
-1
lines changed

1 file changed

+15
-1
lines changed

README.md

+15-1
Original file line numberDiff line numberDiff line change
@@ -152,15 +152,29 @@ To implement REST service that handles AJAX requests that JQuery DataTables send
152152
Now you need to create async method that will serve JQuery DataTables AJAX requests with following classes:
153153
- UriParser that will parse Http request parameters that JQuery DataTables component sends
154154
- QueryBuilder that will create T-SQL query that will be executed.
155+
155156
First, you need to parse Request parameters using UriParser in order to extract the definition of query (QuerySpec object). Then you need to use QueryBuilder to create SQL query using the QuerySpec. Then you need to provide sql query to QueryPipe that will stream results to JQuery DataTables using Response.Body:
156157

157158
```
158159
// GET api/People
159160
[HttpGet]
160-
public async Task Get()
161+
public async Task Get(int draw, int start, int length)
161162
{
162163
var querySpec = JQueryDataTables.UriParser.Parse(tableSpec, this.Request);
163164
var sql = QueryBuilder.Build(querySpec, tableSpec).AsJson();
165+
166+
var header = System.Text.Encoding.UTF8.GetBytes(
167+
@"{
168+
""draw"":" + draw + @",
169+
""recordsTotal"": " + (start + length + 1) + @",
170+
""recordsFiltered"": " + (start + length + 1) + @",
171+
""data"":");
172+
await Response.Body.WriteAsync(header, 0, header.Length);
173+
164174
await sqlQuery.Stream(sql, Response.Body, "[]");
175+
176+
await Response.Body.WriteAsync(System.Text.Encoding.UTF8.GetBytes("}"), 0, 1);
165177
}
166178
```
179+
[JQuery DataTables](https://datatables.net/) component requires AJAX response in some pre-defined format, so you woudl need to wrap results from database with header that contains number of total and number of filtered records.
180+

0 commit comments

Comments
 (0)