Programming Microsoft ASP.NET 2.0 Core Reference
PUBLISHED BY Microsoft Press A
Division of Microsoft Corporation
One Microsoft Way Redmond, Washington 98052-6399
Copyright © 2006 by Dino EspositoISBN:0735621764
All rights reserved. No part of the contents of this book may be reproduced or transmitted in any form or by any means without the written permission of the publisher.
Library of Congress Control Number 2005933933
Printed and bound in the United States of America.
1 2 3 4 5 6 7 8 9 QWT 8 7 6 5 4 3
Distributed in Canada by H.B. Fenn and Company Ltd.
A CIP catalogue record for this book is available from the British Library.
Microsoft Press books are available through booksellers and distributors worldwide. For further information about international editions, contact your local Microsoft Corporation office or contact Microsoft Press International directly at fax (425) 936-7329. Visit our Web site at www.microsoft.com/mspress. Send comments to firstname.lastname@example.org.
Microsoft, Active Directory, ActiveX, Excel, FrontPage, IntelliSense, JScript, Microsoft Press, MSDN, SharePoint, Visual Basic, Visual InterDev, Visual Studio, Webdings, Win32, Windows, Windows NT, and Windows Server are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries.
The example companies, organizations, products, domain names, e-mail addresses, logos, people, places, and events depicted herein are fictitious. No association with any real company, organization, product, domain name, e-mail address, logo, person, place, or event is intended or should be inferred.
This book expresses the author's views and opinions. The information contained in this book is provided without any express, statutory, or implied warranties. Neither the authors, Microsoft Corporation, nor its resellers, or distributors will be held liable for any damages caused or alleged to be caused either directly or indirectly by this book.
Acquisitions Editor: Ben Ryan
Project Editors: Lynn Finnel
Technical Editor: Kenn Scribner
Copy Editor: Roger LeBlanc
Indexer: Lynn Armstrong
Body Part No. X11-50070
To my parents
Imagination is more important than knowledge.
— Albert Einstein
A good ensemble of people made this book happen: Ben Ryan, Lynn Finnel, Kenn Scribner, Roger LeBlanc, Robert Lyon. To all of them I owe a monumental "thank you" for being so kind, patient, and accurate. They reviewed, edited, reworked, and tested all the text and code that makes up this book.
Other people contributed in various ways to improve the overall quality of the book that you hold in your hands. An unordered list of names certainly includes Jeff Prosise, Fernando Guerrero, Marius Constantinescu, Marco Bellinaso, and Steve Toub. I would especially like to thank Andrea Saltarello, who spent quite a few afternoons typing quickly on messenger to help me out with problematic examples and design patterns that were not very well understood, as well as with unknown Internet Information Server (IIS) features and common practices.
A bunch of other people helped me significantly, although perhaps unknowingly. Many of them just posted on their respective blogs, but Google was smart enough to catch their thoughtful remarks and comments and serve them to me. Thanks to Fritz Onion, Julia Lerman, Shawn Farkas, Scott Hanselman, Angel Saenz-Badillos, Bertrand LeRoy, Mike Pope, and Fredrik Normen.
Matthew Gibbs, Brad Millington, Nikhil Kothari, and Stefan Schackow on the Microsoft ASP.NET team provided significant help and contributed a lot to transform my hunches and hypotheses into correct statements. And thanks to Scott Guthrie for being so surprisingly quick with his answers in spite of the huge amount of work that he was doing to make ASP.NET a wonderful reality.
Bits and pieces of this book appeared in my monthly "Cutting Edge" column in MSDN Magazine. Writing a book is a very long process that unfolds itself in many little steps. A good chapter sometimes begins with a good article, and a good article begins with a good idea. Good ideas come more easily if there's great technology behind it. Thanks to Steve Toub, Josh Trupin, and all the great people at MSDN Magazine.
It was my greatest pleasure to work with all of you!
PS: After years of practice, my wife and kids treated this nearly 1000-page book as usual business. Nothing special, just everyday work. They know me. And how to handle me.
About the Author
Dino Esposito is the Microsoft ASP.NET and ADO.NET expert at Solid Quality Learning, a premier training and consulting firm.
Dino writes the "Cutting Edge" column for MSDN Magazine and regularly contributes Microsoft .NET Framework articles to the Microsoft ASP.NET and Visual Studio Developer Centers and other magazines, including asp.netPRO Magazine, CoDe Magazine, and the Dr. Dobb's ASP.NET-2-The-Max newsletter. His books include Programming Microsoft ASP.NET (Microsoft Press, 2003), Building Web Solutions with ASP.NET and ADO.NET (Microsoft Press, 2002), and Applied XML Programming for Microsoft .NET (Microsoft Press, 2002). Up-to-date information about Dino's upcoming articles and books can be found in his blog at http://weblogs.asp.net/despos.
As a member of the International .NET Association (INETA) team of speakers, Dino is a frequent speaker at local community events, particularly in Europe and the United States.
Before becoming a full-time author, consultant, and trainer, Dino worked for several top consulting companies. Based in Rome, Italy, he pioneered DNA systems in Europe, and in 1994 designed one of the first serious Web applications—an image data bank. These days, you can find Dino at leading conferences such as DevConnections, DevWeek, WinDev, and Microsoft TechEd.