Datasheet

Listing 1-6 (continued)
<head runat=”server”>
<title>.NET Article Archive</title>
</head>
<body>
<form id=”form1” runat=”server”>
<h1>.NET Article Archive</h1>
<p>
Pick a Year:
</p>
<p>
<asp:HyperLink ID=”HyperLink1” runat=”server”
NavigateUrl=”~/2006”>2006</asp:HyperLink><br />
<asp:HyperLink ID=”HyperLink2” runat=”server”
NavigateUrl=”~/2005”>2005</asp:HyperLink>
</p>
</form>
</body>
</html>
The NavigateUrl attribute of the HyperLink elements contain readable URLs that will be rewritten as
query string parameters. Similarly, after users select a year, they will see the year page shown in Listing 1-7.
Listing 1-7: Year page with readable URLs: YearView.aspx
<%@ Page Language=”C#” AutoEventWireup=”true” CodeFile=”YearView.aspx.cs”
Inherits=”YearView” %>
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN”
“http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>
<html xmlns=”http://www.w3.org/1999/xhtml” >
<head runat=”server”>
<title>Articles for the Year</title>
</head>
<body>
<form id=”form1” runat=”server”>
<h1>
<asp:Label ID=”lblTitle”
runat=”server”
Text=”Articles for the Year #”>
</asp:Label>
</h1>
<p>
<asp:Panel ID=”pnlMonths” runat=”server” Height=”50px” Width=”125px”>
<asp:HyperLink ID=”hypJanuary” runat=”server”
NavigateUrl=”~/YEAR/01”>January</asp:HyperLink><br />
<asp:HyperLink ID=”hypFebruary” runat=”server”
NavigateUrl=”~/YEAR/02”>February</asp:HyperLink><br />
<asp:HyperLink ID=”hypMarch” runat=”server”
NavigateUrl=”~/YEAR/03”>March</asp:HyperLink><br />
<asp:HyperLink ID=”hypApril” runat=”server”
NavigateUrl=”~/YEAR/04”>April</asp:HyperLink><br />
16
Chapter 1
04_597663 ch01.qxp 4/25/06 9:54 PM Page 16