Skip to main content
Any Framework

Syncfusion® ASP.NET MVC Grid is a high-performance, feature-rich data grid control for displaying and manipulating tabular data. It supports virtual scrolling,paging, sorting, filtering, grouping, searching, inline editing (batch, dialog, inline),frozen rows and columns, column resizing, reordering, multi-column sorting, master-detail,aggregates, export to Excel/PDF/CSV, and accessibility.

Published
Jul 27, 2026
2mo ago
Total Downloads
2.5K
2,465

Install

dotnet add package Syncfusion.AspNetMvc.Grid --version 34.1.33

No framework information available.

README

Syncfusion® ASP.NET MVC Grid Component

The Syncfusion® ASP.NET MVC Grid is a high-performance, feature-rich component for displaying and manipulating tabular data. It supports data binding from a variety of sources including local collections, OData services, and remote REST APIs.

Key Features

  • High-Performance Rendering: Row and column virtualization for large datasets
  • Sorting & Filtering: Single and multi-column sorting with Excel-like and checkbox filtering
  • Grouping: Hierarchical data grouping with support for aggregate functions
  • Editing Modes: Inline, batch, and dialog editing modes with validation
  • Paging Options: Traditional paging, virtual scrolling, and infinite scrolling
  • Column Features: Resizing, reordering, freezing, hiding, and foreign key columns
  • Data Export: Export to Excel, CSV, and PDF formats
  • Master-Detail Views: Hierarchical grids with detail row templates
  • Responsive Design: Mobile-friendly layout with keyboard navigation
  • Accessibility: Full WCAG compliance and ARIA support

Common Setup

These setup steps are required only once for your application, regardless of which Syncfusion components you use.

1. Install Base NuGet Package

Install-Package Syncfusion.AspNetMvc.Grid

2. Add Namespace Reference

Edit Web.config under the Views folder and add the Syncfusion.EJ2 namespace:

<namespaces>
    <add namespace="Syncfusion.EJ2"/>
</namespaces>

3. Add Stylesheet & Script References

In your layout file (~/Views/Shared/_Layout.cshtml), add the following in the <head> section:

<head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>@ViewBag.Title - Syncfusion Application</title>
    
    <!-- Syncfusion ASP.NET MVC controls styles -->
    <link rel="stylesheet" href="https://cdn.syncfusion.com/ej2/34.1.33/fluent2.css" />
    
    <!-- Syncfusion ASP.NET MVC controls scripts -->
    <script src="https://cdn.syncfusion.com/ej2/34.1.33/dist/ej2.min.js"></script>
</head>

4. Register Script Manager

At the end of the <body> tag in your layout file (~/Views/Shared/_Layout.cshtml):

<body>
    @RenderBody()
    
    <!-- Syncfusion ASP.NET MVC Script Manager -->
    @Html.EJS().ScriptManager()
</body>

Quick Start

Step 1: Add Controller: ~/Controllers/HomeController.cs

using System;
using System.Collections.Generic;
using System.Web.Mvc;

public class HomeController : Controller
{
    public ActionResult Index()
    {
        List<OrderData> orders = new List<OrderData>
        {
            new OrderData { OrderID = 10248, CustomerName = "VINET", ShippedDate = new DateTime(2023, 07, 04), Freight = 32.38 },
            new OrderData { OrderID = 10249, CustomerName = "TOMSP", ShippedDate = new DateTime(2023, 07, 05), Freight = 11.61 },
            new OrderData { OrderID = 10250, CustomerName = "HANAR", ShippedDate = new DateTime(2023, 07, 08), Freight = 65.83 },
            new OrderData { OrderID = 10251, CustomerName = "VICTE", ShippedDate = new DateTime(2023, 07, 08), Freight = 41.34 }
        };
        ViewBag.DataSource = orders;
        return View();
    }
}

public class OrderData
{
    public int OrderID { get; set; }
    public string CustomerName { get; set; }
    public DateTime ShippedDate { get; set; }
    public double Freight { get; set; }
}

Step 2: Add ASP.NET MVC DataGrid control

Add the Syncfusion® ASP.NET MVC DataGrid control ~/Views/Home/Index.cshtml page:

@Html.EJS().Grid("Grid")
    .DataSource((IEnumerable<object>)ViewBag.DataSource)
    .AllowPaging(true)
    .AllowSorting(true)
    .AllowFiltering(true)
    .Columns(col =>
    {
        col.Field("OrderID").HeaderText("Order ID").Width("120").Add();
        col.Field("CustomerName").HeaderText("Customer Name").Width("150").Add();
        col.Field("ShippedDate").HeaderText("Shipped Date").Width("130").Format("yMd").Add();
        col.Field("Freight").HeaderText("Freight").Width("120").Format("C2").Add();
    })
    .Render()

Step 3: Run the Application

Press Ctrl+F5 to run the application in your browser.

Documentation

Support

License

This is a commercial product and requires a paid license for possession or use. Review the Syncfusion® EULA

About Syncfusion®

Syncfusion® provides 1600+ UI components and frameworks for web, mobile, and desktop development across multiple platforms:

Web: Blazor | ASP.NET MVC | ASP.NET MVC | JavaScript | Angular | React | Vue

Mobile: Flutter | MAUI | UWP

Desktop: WinForms | WPF | WinUI

Learn more at www.syncfusion.com

[email protected] | Toll Free: 1-888-9-DOTNET

Changes from Previous Version

No structural changes between v34.1.32 and v34.1.33.

Adoption Assessment

A verified publisher signal is available. Assess fit from the package's supported frameworks, license and dependency graph rather than popularity alone.

No SPDX license expression is published. Review the license text and your organisation's policy before redistribution.No target framework metadata is available. Confirm compatibility in a representative project before standardising on this package.

Related Guides & Workflows

Learn how to evaluate, integrate, or audit this package in your .NET project.