Leaving Words
First note that leaving words is different from making comments on the specified goods. In our sample, this function is only available to common customers. By providing this function the website can find out the users’ requirements in time to accelerate the development of the website.
Here, since this function is performed through a common ASP.NET page, we only show you the design-time snapshot in Figure 21. As for the code behind please refer to the source code you can download through a link on the first page of this article.
Figure 21—the design-time layout of page ‘leaveword.aspx’ for the customers to leave words

Searching Products
The searching function is typically supported in most web applications in real scenarios. Here, we have also provided two kinds of search function: simple search and advanced search.
Simple Search
The simple search only aims to retrieve products from the server side database according to the product name provided. The related web page in design-time is shown in Figure 22, as follows.
Figure 22—the design-time layout for simple search

As is shown in the above Figure 22, this page is very simple, with a TextBoxWatermarkExtendercontrol to decorate the textbox control for the user to enter the product name as the search keyword. At the bottom is an ASP.NET GridView control which is surrounded by an UpdatePanelcontrol that aims to achieve the partial refreshing effect. The middle button, "Search," will invoke the search action and trigger partial refreshing of the GridView control with newly-retrieved data. Here, still for brevity, we omit the related simple analysis.
Now let’s examine the advanced search function.