{
  "$schema": "https://ai.syncfusion.com/schema/registry-item.json",
  "name": "grid-default",
  "framework": "aspnet-core",
  "type": "registry:component",
  "component": "Grid",
  "variant": "default",
  "dependencies": [
    "Syncfusion.AspNetCore.Grid"
  ],
  "description": "Data grid with paging, sorting, Excel-style filtering, and inline add/edit/delete.",
  "meta": {
    "essentialStudioRelease": "2026 Volume 2 (v34.1.29)",
    "license": "commercial-or-community",
    "licenseNote": "The Syncfusion package is licensed. The composition in this file is source you own and edit. See https://ai.syncfusion.com/licensing.md",
    "requiresLicenseKey": true,
    "requiresServerEndpoint": false,
    "platformIndex": "https://ai.syncfusion.com/aspnetcore/llms.txt",
    "skillPack": "syncfusion/aspnetcore-ui-components-skills",
    "docs": "https://ai.syncfusion.com/gallery/aspnet-core/grid-default.md"
  },
  "files": [
    {
      "target": "src/components/grid-default/grid.cshtml",
      "content": "@page\n@model EJ2CoreSampleBrowser.Pages.Grid.DefaultFunctionalitiesModel\n\n<div class=\"control-section\">\n    <ejs-grid id=\"Grid\" dataSource=\"@Model.DataSource\" allowPaging=\"true\" allowSorting=\"true\" allowFiltering=\"true\"\n              toolbar=\"@(new List<string>() { \"Add\", \"Edit\", \"Delete\", \"Update\", \"Cancel\" })\">\n        <e-grid-pagesettings pageCount=\"5\"></e-grid-pagesettings>\n        <e-grid-filterSettings type=\"Excel\"></e-grid-filterSettings>\n        <e-grid-editSettings allowAdding=\"true\" allowDeleting=\"true\" allowEditing=\"true\"></e-grid-editSettings>\n        <e-grid-columns>\n            <e-grid-column field=\"OrderID\" headerText=\"Order ID\" isPrimaryKey=\"true\" textAlign=\"Right\"\n                           validationRules=\"@(new { required = true, number = true })\" width=\"180\"></e-grid-column>\n            <e-grid-column field=\"CustomerID\" headerText=\"Customer Name\" validationRules=\"@(new { required = true })\"\n                           width=\"150\"></e-grid-column>\n            <e-grid-column field=\"OrderDate\" headerText=\" Order Date\" format=\"yMd\" editType=\"datepickeredit\"\n                           width=\"130\"></e-grid-column>\n            <e-grid-column field=\"Freight\" headerText=\"Freight\" format=\"C2\" width=\"120\"></e-grid-column>\n            <e-grid-column field=\"ShippedDate\" headerText=\"Shipped Date\" format=\"yMd\" editType=\"datepickeredit\"\n                           width=\"140\"></e-grid-column>\n            <e-grid-column field=\"ShipCountry\" headerText=\"Ship Country\" width=\"150\"></e-grid-column>\n\n        </e-grid-columns>\n    </ejs-grid>\n</div>\n"
    },
    {
      "target": "src/components/grid-default/grid.cshtml.cs",
      "content": "using Microsoft.AspNetCore.Mvc.RazorPages;\nnamespace EJ2CoreSampleBrowser.Pages.Grid;\n\npublic class DefaultFunctionalitiesModel : PageModel\n{\n    public List<OrdersDetails> DataSource { get; set; }\n\n    public void OnGet()\n    {\n        DataSource = OrdersDetails.GetAllRecords();\n    }\n}\n\npublic class OrdersDetails\n{\n    public OrdersDetails()\n    {\n\n    }\n    public OrdersDetails(int OrderID, string CustomerId, int EmployeeId, double Freight, bool Verified, DateTime OrderDate, string ShipCity, string ShipName, string ShipCountry, DateTime ShippedDate, string ShipAddress)\n    {\n        this.OrderID = OrderID;\n        this.CustomerID = CustomerId;\n        this.EmployeeID = EmployeeId;\n        this.Freight = Freight;\n        this.ShipCity = ShipCity;\n        this.Verified = Verified;\n        this.OrderDate = OrderDate;\n        this.ShipName = ShipName;\n        this.ShipCountry = ShipCountry;\n        this.ShippedDate = ShippedDate;\n        this.ShipAddress = ShipAddress;\n    }\n    public static List<OrdersDetails> GetAllRecords()\n    {\n        List<OrdersDetails> order = new List<OrdersDetails>();\n        int code = 10000;\n        for (int i = 1; i < 10; i++)\n        {\n            order.Add(new OrdersDetails(code + 1, \"ALFKI\", i + 0, 2.3 * i, false, new DateTime(1991, 05, 15, 10, 40, 00), \"Berlin\", \"Simons bistro\", \"Denmark\", new DateTime(1996, 7, 16), \"Kirchgasse 6\"));\n            order.Add(new OrdersDetails(code + 2, \"ANATR\", i + 2, 3.3 * i, true, new DateTime(1990, 04, 04, 09, 30, 00), \"Madrid\", \"Queen Cozinha\", \"Brazil\", new DateTime(1996, 9, 11), \"Avda. Azteca 123\"));\n            order.Add(new OrdersDetails(code + 3, \"ANTON\", i + 1, 4.3 * i, true, new DateTime(1957, 11, 30, 03, 45, 00), \"Cholchester\", \"Frankenversand\", \"Germany\", new DateTime(1996, 10, 7), \"Carrera 52 con Ave. Bolívar #65-98 Llano Largo\"));\n            order.Add(new OrdersDetails(code + 4, \"BLONP\", i + 3, 5.3 * i, false, new DateTime(1930, 10, 22, 07, 30, 00), \"Marseille\", \"Ernst Handel\", \"Austria\", new DateTime(1996, 12, 30), \"Magazinweg 7\"));\n            order.Add(new OrdersDetails(code + 5, \"BOLID\", i + 4, 6.3 * i, true, new DateTime(1953, 02, 18, 05, 50, 00), \"Tsawassen\", \"Hanari Carnes\", \"Switzerland\", new DateTime(1997, 12, 3), \"1029 - 12th Ave. S.\"));\n            code += 5;\n        }\n        return order;\n    }\n\n    public int? OrderID { get; set; }\n    public string CustomerID { get; set; }\n    public int? EmployeeID { get; set; }\n    public double? Freight { get; set; }\n    public string ShipCity { get; set; }\n    public bool Verified { get; set; }\n    public DateTime OrderDate { get; set; }\n\n    public string ShipName { get; set; }\n\n    public string ShipCountry { get; set; }\n\n    public DateTime ShippedDate { get; set; }\n    public string ShipAddress { get; set; }\n}"
    }
  ]
}