Preview
Name Surname Marital status Age Birthday Employed
Joe Crosswave Married 32 1/5/1993 False
Merry Lisel Widowed 41 5/6/1983
Henry Crux Single 29 11/19/1995 True
Cody Jurut 49 8/11/1975 False
Simon Scranton Single 34 10/10/1990
Leena Laurent Divorced 19 7/1/2005 False
Ode Cosmides Married 53 4/17/1971 True
Diandra Mizner Single 20 8/20/2004 False
Pete Cassel Married 22 3/13/2002 False
Nicky Tremblay Married 32 1/5/1993 True
Mary Cassel Married 24 7/10/2000 True
View

@model IQueryable<Person>

@(Html
    .Grid(Model)
    .Build(columns =>
    {
        columns.Add(model => model.Name).Titled("Name").UsingDefaultFilterMethod("equals");
        columns.Add(model => model.Surname).Titled("Surname").Filterable(GridFilterCase.Lower);
        columns.Add(model => model.MaritalStatus).Titled("Marital status").Filterable(GridFilterType.Multi);

        columns.Add(model => model.Age).Titled("Age").Filterable(false);
        columns.Add(model => model.Birthday).Titled("Birthday").Filterable(GridFilterType.Double);
        columns.Add(model => model.IsWorking).Titled("Employed").UsingFilterOptions(new[]
        {
            new SelectListItem(),
            new SelectListItem { Value = "true", Text = "Working" },
            new SelectListItem { Value = "false", Text = "Unemployed" }
        });
    })
    .Empty("No data found")
    .Filterable() // Enables single filtering for not explicitly configured property expression columns.
)