Related Topics: RIA Developer's Journal, Enterprise Application Performance, Microsoft Developer

Book Review

Book Review: Sams Teach Yourself ASP.NET 4

This book is well written and directed at beginners

There are certain authors whose books I look forward to reading because they don't just repackage a manual but offer practical real-work examples and advice. One such author is Scott Mitchell. He has revised his previous version of this book to encompass ASP.NET 4 . This book is well written and directed at beginners. If, however, you have the 3.5 version of this book, I would not recommend this version as there is very little new being offered. On the other hand, if you are new to ASP.NET, this book is a great starting-off point to learning the basics of ASP.NET 4

The book is divided into four parts and 24 chapters. At the end of each chapter there are three valuable sections that the reader should not skip: a Q&A section in which clarifying questions are asked and answered; a workshop section to practice the skills developed in the chapter; and an Exercises section to hone your coding skills.

This book spends a lot of time working with the SQL data source control and with reviewing the use of the gridview control and two-way data binding. These topics are timely and valuable. In addition, Mr. Mitchell will refer you to additional readings when appropriate from other web sites including his well-known and exhaustive web site called 4guysfromrolla.com.

Mr. Mitchell is also responsive to your suggestions. In the previous review, I mentioned that the database publishing Wizard that he discusses in Chapter 24 is really only effective the first time you deploy your database. Mr. Mitchell responds to this observation in the Q&A section of Chapter 24 of the new book.

It is impossible to cover all topics well in an introductory book of this type. I am still disappointed that the chapter that discusses AJAX is very light with little mention and no demos of the AJAX Toolkit.

I still recommend this book as a starting point when learning ASP.NET 4. You will absorb a lot of knowledge from this book and it will get you started on the road to developing more complex applications by building a good foundation.

Mr. Mitchell points out that the detailsview control allows the user to insert records as opposed to the gridview control. The issue though is what happens if the table that you are trying to insert data into does not have any records yet. The details view control will not appear. If you add something to the empty data text property, it will appear but still not be useful. Why? The detailsview control has three modes that can be set in the Default mode property. They are: ReadOnly, Edit, and Insert. The detailsview used ReadOnly as its default, which is fine as long as you have data in the table. To alleviate this situation, the key would be to put the detailsview in Insert mode when there is no data. There is a simple way to do that if you are using a datasource control. The source control has a method that you can use to determine how many rows were selected to be displayed in the detailsview control. If it's zero, then set the detailsview control's mode to insert. See the example below.

Private Sub SqlDataSource1_Selected(ByVal sender As Object,
ByVal e As System.Web.UI.WebControls.SqlDataSourceStatusEventArgs)
Handles SqlDataSource1.Selected

If e.AffectedRows = 0 Then
DetailsView1.ChangeMode(DetailsViewMode.Insert)
End If

End Sub

More Stories By Steven Mandel

Steven Mandel has worked in the IT industry for over 15 years designing databases using Microsoft Access and SQL Server. He has developed Web and Windows applications using VB.NET and has written numerous articles and reviews about ASP.NET and VB.NET.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.