Working with Controls / FlexGrid / Work with FlexGrid / Data Binding / OData Binding
OData Binding

OData model is a server-side model which provides the complete data at the server side. To apply OData binding in FlexGrid, you need to specify the service url, table name, and keys property. This topic describes how to add data to FlexGrid using OData binding.

The following image shows how the FlexGrid control appears after implementing the code below.

Controller Code

CSHTML
Copy Code
// GET: FlexGrid
public ActionResult Index()
{
    return View();
}

View Code

Razor
Copy Code
@(Html.C1().FlexGrid()
        .Id("ODataBinding")
        .IsReadOnly(true)
        .AllowAddNew(false)
        .AllowDelete(false)
        .CssStyle("height", "300px")
        .AutoGenerateColumns(false)
        .BindODataSource(odsb =>
                            odsb.ServiceUrl("https://services.odata.org/Northwind/Northwind.svc")
                            .TableName("Products")
                            .Keys("ProductID"))
        .Columns(csb =>
        {
            csb.Add(cb => cb.Binding("ProductID").Width("*"));
            csb.Add(cb => cb.Binding("ProductName").Width("*"));
            csb.Add(cb => cb.Binding("QuantityPerUnit").Width("*"));
            csb.Add(cb => cb.Binding("UnitsInStock").Width("*"));
        })
        .Filterable(fb => fb.DefaultFilterType(FilterType.Both)))