ComponentOne ASP.NET MVC Controls
Working with Controls / FlexGrid / Work with FlexGrid / Data Binding / OData Binding
In This Topic
    OData Binding
    In This Topic

    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.

    FlexGridController

    C#
    Copy Code
    public class FlexGridController : Controller
        {
            // GET: FlexGrid
            public ActionResult Index()
            {
                return View();
            }
        }
    

    Index.cshtml

    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)))