ASP.NET Web Pages WebGrid

WebGrid - One of many useful ASP.NET Web Helpers

Doing the HTML Yourself

In a previous chapter, you displayed database data by using razor code, and doing the HTML markup yourself:

Database Example

@{
var db = Database.Open("SmallBakery"); 
var selectQueryString = "SELECT * FROM Product ORDER BY Name"; 
}

<html> 
<body> 
<h1>Small Bakery Products</h1> 
<table> 
<tr>
<th>Id</th> 
<th>Product</th> 
<th>Description</th> 
<th>Price</th> 
</tr>
@foreach(var row in db.Query(selectQueryString))
{

<tr> 
<td>@row.Id</td> 
<td>@row.Name</td> 
<td>@row.Description</td> 
<td style="text-align:right">@row.Price</td> 
</tr> 
}
</table> 
</body> 
</html>

Using The WebGrid Helper

Using the WebGrid helper is an easier way to display data.

The WebGrid helper:

  • Automatically sets up an HTML table to display data
  • Supports different options for formatting
  • Supports paging through data
  • Supports Sorting by clicking on column headings
  • WebGrid Example

    @{ 
    var db = Database.Open("SmallBakery") ; 
    var selectQueryString = "SELECT * FROM Product ORDER BY Name"; 
    var data = db.Query(selectQueryString); 
    var grid = new WebGrid(data); 
    }

    <html> 
    <head> 
    <title>Displaying Data Using the WebGrid Helper</title> 
    </head> 
    <body> 
    <h1>Small Bakery Products</h1> 
    <div id="grid"> 
    @grid.GetHtml()
    </div> 
    </body> 
    </html>

    WebGrid Object Reference

    Helper Description
    WebGrid(data)Creates a new WebGrid object using data from a query.
    WebGrid.GetHtml()Renders markup to display data in an HTML table.
    WebGrid.Pager()Renders a pager for the WebGrid object.