Skip to main content

ASP.NET 2.0 Website Programming: Problem - Design - Solution

ASP.NET 2.0 Website Programming: Problem - Design - Solution

Marco Bellinaso

ISBN: 978-0-764-58464-0

May 2006

600 pages

Select type: Paperback

Product not available for purchase


ASP.NET 2.0 Programming: Problem Design Solution is aimed at describing, designing, and implementing a site much like the ones you’re probably working on or will be soon, while taking the opportunity to introduce and explain many of the new features that the new great ASP.NET 2.0 framework offers. Difficult problems are addressed head-on so you'll be ready for most of the problems you’ll typically face when writing a modern website, and have one or more solutions ready for them.

Unlike many other ASP.NET books that show examples for individual pages or features, the example in this book is an integrated end-to-end site (written in C#). The entire book and site has been written specifically for ASP.NET 2.0, to use the ASP.NET 2.0 features wherever they make sense.

The end-result is a website which features a layout with user-selectable themes, a membership system, a content management system for publishing and syndicating articles and photos, polls, mailing lists, forums, an e-commerce store with support for real-time credit card processing, homepage personalization, and localization. The book leads the reader through development of a site with:

  • Account registration, personalization and theming
  • News and events, organized into categories
  • Opinion polls
  • Newsletter
  • Forums
  • E-commerce store with shopping cart and order management
  • Localization
Administration of a site will be covered including:
  • Full online back-end administrative section, to manage practically all data from an intuitive user interface
  • Site deployment
In building these site features, you'll learn these new ASP.NET 2.0 features:
  • Master pages
  • Theming
  • Personalization & Web parts
  • Membership & Profile modules
  • Personalization
  • The new server-side UI controls such as GridView, DetailsView, FormView, Wizard, MultiView, the new xxxDataSource and navigation controls, among others.
  • The new compilation mode and deployment modes
  • The new framework for instrumenting the site, as well as handling & logging exceptions
  • The new ADO.NET 2.0 features (e.g. caching with database dependency)
  • The new classes for easy distributed transactions Management

This book is also available as part of the 5-book ASP.NET 2.0 Wrox Box (ISBN: 0-470-11757-5). This 5-book set includes:

  • Professional ASP.NET 2.0 Special Edition (ISBN: 0-470-04178-1)
  • ASP.NET 2.0 Website Programming: Problem - Design - Solution (ISBN: 0764584642 )
  • Professional ASP.NET 2.0 Security, Membership, and Role Management (ISBN: 0764596985)
  • Professional ASP.NET 2.0 Server Control and Component Development (ISBN: 0471793507)
  • ASP.NET 2.0 MVP Hacks and Tips (ISBN: 0764597663)
  • CD-ROM with more than 1000 pages of bonus chapters from 15 other .NET 2.0 and SQL Server(TM) 2005 Wrox books
  • DVD with 180-day trial version of Microsoft(r) Visual Studio(r) 2005 Professional Edition



Chapter 1: Introducing the Project: TheBeerHouse.

Chapter 2: Developing the Site Design.

Chapter 3: Planning an Architecture.

Chapter 4: Membership and User Profiling.

Chapter 5: News and Article Management.

Chapter 6: Opinion Polls.

Chapter 7: Newsletters.

Chapter 8: Forums.

Chapter 9: E-commerce Store.

Chapter 10: Personalization and Web Parts.

Chapter 11: Localizing the Site.


Download Code
Code downloads for this title are available here.
Download TheBeerHouse Sample Code
The single zip file contains all the needed code for a VB version of TheBeerHouse sample application built throughout the book. Please note that this VB version of the code is reader created and cannot be supported by Wrox technical support. Please see the readme.txt in the zipfile for additional support, installation, and setup information.
Application Solutions for Chapters 2-5

In response to popular demand, this download contains the chapter-by-chapter application solutions for chapters 2-5 of this project. This is the C# version of the code. These chapter by chapter solutions are created by forum user MythicalMe and are not supported by Wrox/Wiley technical support.

Figure Corrections 5-2
page 196:, figure 5-2
1. The class heading "MB.TheBeerHouse.DAL.Articles.Provider"

should be:
2. In the above referenced class,
"Instance : MB.TheBeerHouse.DAL.PollsProvider"
,br> should be:
"Instance : MB.TheBeerHouse.DAL.ArticlesProvider"
Figure Corrections 5-3
1. The class heading "MB.TheBeerHouse.BLL.Forums.BaseForum"
should be "MB.TheBeerHouse.BLL.Articles.BaseArticle"


2 The class heading "MB.TheBeerHouse.DAL.CommentDetails"
should be "MB.TheBeerHouse.BLL.Comment".


3 In this same class, "Title : decimal" should be deleted, "ArticleID : int" should be added


4 "Body : decimal" should be "Body : string"


5. In class "MB.TheBeerHouse.BLL.Articles.Article", "Category : MB.TheBeerHouse.BLL.Srticles.Category"
should be "MB.TheBeerHouse.BLL.Articles.Category"


6 The class heading "MB.TheBeerHouse.DAL.CommentDetails" should be "MB.TheBeerHouse.BLL.CommentComparer"
ChapterPageDetailsDatePrint Run
28Error in Text
Second paragraph, Sentence 4:
Second instance of 'Windows' should be 'IE'

212Error in Code
<link href= /styles.css text= text/css rel= stylesheet />

Should be

<link href= /styles.css type= text/css rel= stylesheet />

217Error in Text
1st line:
code-beside file

should be:
code-behind file

222Error in Code
last code block on page, 3rd line:
<siteMapNode title= Books url= ~/Books/Books.aspx>

should be:
<siteMapNode title= Books url= ~/Books/Books.aspx >

222Error in Text
After heading Defining a Site Map File first paragraph, 2nd line:

a hierarchical structure of <siteMapPath> nodes

Should be

a hierarchical structure of <siteMapNode> nodes

236Error in Code
last shaded section of code; next to last line on page:

should be:

244Error in Code
first shaded code block, lines 9-11 (not counting blanks):
if ((onlyTextBoxes && ctl is TextBox) || ctl is TextBox ||
ctl is DropDownList || ctl is ListBox || ctl is CheckBox ||
ctl is RadioButton || ctl is RadioButtonList || ctl is CheckBoxList)

should be these 4 lines instead:
if ((onlyTextBoxes && ctl is TextBox) ||
(!onlyTextBoxes && (ctl is TextBox || ctl is DropDownList ||
ctl is ListBox || ctl is CheckBox || ctl is RadioButton ||
ctl is RadioButtonList || ctl is CheckBoxList)))

abstract class DataAccess
protected int Exec uteNonQuery(DbCommand cmd)

should read:
abstract class DataAccess
protected int ExecuteNonQuery(DbCommand cmd)

101Error in Code
code sample, 10th line reads:
set { base[ connectionStdefaultConnectionStringNameringName ] = value; }

should be:
set { base[ defaultConnectionStringName ] = value; }

104Error in Text
p 104, 3 places:

txtSubmit appears in:
1. top block of shaded code, 3rd line from end: ID= txtSubmit
2. end of that same line: OnClick= txtSubmit_Click
3. first line of the 2nd shaded code block on the page: txtSubmit_Click(object sender, EventArgs e)

text reads:

should be:

115Error in Text
p115, First line in boxed text should begin A great new... (missing A)

126Error in Text
p 126, first line:

text reads:

should be:

4132Error in Text
The ChangePassword control enables users to recover or reset their password

should be:

The PasswordRecovery control enables users to recover or reset their password

233Error in Code
Page 233, In second gray box starting with the 14th line:

Code reads:

public bool Approve(){
bool ret = Article.ApproveArticle(this.ID);
if(success) this.Approved = true;
return ret;

Should read:

public bool Approve(){
bool success = Article.ApproveArticle(this.ID);
if(success) this.Approved = true;
return success;

339Error in Code
The first code listing, second line:
ThreadStart ts = new ThreadStart(Test)

Should be:
ThreadStart ts = new ThreadStart(ExecuteTask)

11507Error in Text
February 2

should be:

February 7