{
  "$schema": "https://ai.syncfusion.com/schema/registry-item.json",
  "name": "grid-default-filtering",
  "framework": "aspnet-core",
  "type": "registry:component",
  "component": "Grid",
  "variant": "default-filtering",
  "dependencies": [
    "Syncfusion.AspNetCore.Grid"
  ],
  "description": "Data grid filters records with a category dropdown and a filterbar-operator toggle.",
  "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/aspnet-core/llms.txt",
    "skillPack": "syncfusion/aspnetcore-ui-components-skills",
    "docs": "https://ai.syncfusion.com/gallery/aspnet-core/grid-default-filtering.md"
  },
  "files": [
    {
      "target": "src/components/grid-default-filtering/grid.cshtml",
      "content": "@page\r\n@model EJ2CoreSampleBrowser.Pages.Grid.DefaultFilteringModel\r\n@{\r\n    ViewData[\"Title\"] = \"Filtering\";\r\n}\r\n\r\n    <div class=\"col-lg-9 control-section\">\r\n        <div class=\"control-wrapper\">\r\n            <ejs-grid id=\"Grid\" dataSource=\"@Model.DataSource\" allowFiltering=\"true\" allowSorting=\"true\" allowPaging=\"true\">\r\n                <e-grid-pagesettings pageCount=\"5\"></e-grid-pagesettings>\r\n                <e-grid-columns>\r\n                    <e-grid-column field=\"CategoryName\" headerText=\"Category Name\" textAlign=\"Right\" width=\"150\"></e-grid-column>\r\n                    <e-grid-column field=\"ProductName\" headerText=\"Product Name\" width=\"150\"></e-grid-column>\r\n                    <e-grid-column field=\"UnitsInStock\" headerText=\"Units in Stock\" textAlign=\"Right\" width=\"150\"></e-grid-column>\r\n                    <e-grid-column field=\"Discontinued\" headerText=\"Discontinued\" width=\"150\" displayAsCheckBox=\"true\" textAlign=\"Center\" type=\"boolean\"></e-grid-column>\r\n                </e-grid-columns>\r\n\r\n            </ejs-grid>\r\n        </div>\r\n    </div>"
    },
    {
      "target": "src/components/grid-default-filtering/grid.cshtml.cs",
      "content": "using Microsoft.AspNetCore.Mvc.RazorPages;\r\nnamespace EJ2CoreSampleBrowser.Pages.Grid;\r\n\r\npublic class DefaultFilteringModel : PageModel\r\n{\r\n    public List<Category> DataSource { get; set; }\r\n\r\n    public void OnGet()\r\n    {\r\n        DataSource = Category.GetAllRecords();\r\n\r\n    }\r\n}\r\n\r\npublic class Category\r\n    {\r\n        \r\n        private bool? _discont = false;\r\n        public Category()\r\n        {\r\n\r\n        }\r\n        public Category(string CategoryName, string ProductName, string QuantityPerUnit, bool Discontinued, short UnitsInStock)\r\n        {\r\n\r\n            this.CategoryName = CategoryName;\r\n            this.ProductName = ProductName;\r\n            this.QuantityPerUnit = QuantityPerUnit;\r\n            this.UnitsInStock = UnitsInStock;\r\n            this.Discontinued = Discontinued;\r\n        }\r\n\r\n        public static List<Category> GetAllRecords()\r\n        {\r\n            List<Category> category = new List<Category>();\r\n            category.Add(new Category(\"Beverages\", \"Chai\", \"10 boxes x 20 bags\", true, 39));\r\n            category.Add(new Category(\"Condiments\", \"Aniseed Syrup\", \"12 - 550 ml bottles\", true, 13));\r\n            category.Add(new Category(\"Confections\", \"Chocolade\", \"10 pkgs.\", true, 15));\r\n            category.Add(new Category(\"Dairy Categorys\", \"Camembert Pierrot\", \"15 - 300 g rounds\", false, 19));\r\n            category.Add(new Category(\"Grains/Cereals\", \"Filo Mix\", \"16 - 2 kg boxes\", false, 38));\r\n            category.Add(new Category(\"Meat/Poultry\", \"Tourtire\", \"16 pies\", false, 21));\r\n            return category;\r\n        }\r\n\r\n        public string CategoryName { get; set; }\r\n        public string ProductName { get; set; }\r\n        public string QuantityPerUnit { get; set; }\r\n        public short UnitsInStock { get; set; }\r\n        public bool? Discontinued\r\n        {\r\n            get\r\n            {\r\n                return this._discont;\r\n            }\r\n            set\r\n            {\r\n                this._discont = value;\r\n            }\r\n        }\r\n    }"
    }
  ]
}