This example shows how to bind Telerik Grid for ASP.NET MVC to web services.
You need to configure the grid via the DataBinding method
<%= Html.Telerik().Grid<Order>()
.Name("AsmxGrid")
.DataBinding(dataBinding => dataBinding.WebService().Select("~/Models/Orders.asmx/GetOrders"))
.Columns(columns =>
{
columns.Bound(o => o.OrderID).Width(81);
columns.Bound(o => o.Customer.ContactName).Width(200);
columns.Bound(o => o.ShipAddress);
columns.Bound(o => o.OrderDate).Format("{0:MM/dd/yyyy}").Width(100);
})
.Sortable()
.Pageable()
.Filterable()
.Scrollable()
%>
The web service method should have a parameter of type GridState which represents the current grid state - page,
sort, filter and group expressions.
The web service method may return the GridModel object or any other object which has a Data and Total
properties. To benefit from the built-in Linq expression engine you can use the ToGridModel extension method:
[WebMethod]
public GridModel GetOrders(GridState state)
{
NorthwindDataContext northwind = new NorthwindDataContext();
return northwind.Orders.ToGridModel(state);
}