All rights reserved. No part of this work may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying, recording, or by any information storage or retrieval system, without the prior written permission of the copyright owner and the publisher.
Printed and bound in the United States of America 12345678910
Trademarked names may appear in this book. Rather than use a trademark symbol with every occurrence of a trademarked name, we use the names only in an editorial fashion and to the benefit of the trademark owner, with no intention of infringement of the trademark.
Openwave and the Openwave logo are registered trademarks and/or trademarks of Openwave Systems Inc. in various jurisdictions. All rights reserved.
Technical Reviewer: Marc Höppner
Editorial Board: Dan Appleman, Craig Berry, Gary Cornell, Tony Davis, Steven Rycroft, Julian Skinner, Martin Streicher, Jim Sumser, Karen Watterson, Gavin Wray, John Zukowski
Assistant Publisher: Grace Wong
Project Manager: Kylie Johnston
Copy Editors: Ami Knox, Nicole LeClerc
Production Manager: Kari Brooks
Production Editor: Laura Cheu
Proofreaders: Lori Bring, Linda Seifert
Compositor: Diana Van Winkle, Van Winkle Design Group
Indexer: Nancy A. Guenther
Cover Designer: Kurt Krames
Manufacturing Manager: Tom Debolski
Distributed to the book trade in the United States by Springer-Verlag New York, Inc., 175 Fifth Avenue, New York, NY 10010 and outside the United States by Springer-Verlag GmbH & Co. KG, Tiergartenstr. 17, 69112 Heidelberg, Germany.
In the United States: phone 1-800-SPRINGER, email <firstname.lastname@example.org>, or visit http://www.springer-ny.com. Outside the United States: fax +49 6221 345229, email <email@example.com>, or visit http://www.springer.de.
For information on translations, please contact Apress directly at 2560 Ninth Street, Suite 219, Berkeley, CA 94710. Phone 510-549-5930, fax 510-549-5939, email <firstname.lastname@example.org>, or visit http://www.apress.com.
The information in this book is distributed on an "as is" basis, without warranty. Although every precaution has been taken in the preparation of this work, neither the author(s) nor Apress shall have any liability to any person or entity with respect to any loss or damage caused or alleged to be caused directly or indirectly by the information contained in this work.
The source code for this book is available to readers at http://www.apress.com in the Downloads section. You will need to answer questions pertaining to this book in order to successfully down-load the code.
This book is dedicated to my father, who never had a chance to see me grow up and write books like he did. And it's also dedicated to my mother for always bearing with her annoying son.
About the Author
Patrick A. Lorenz lives in Germany. He works as CTO for a software development and consulting company based in southern Germany. PGK Software & Communication GmbH (www.pgk.de) focuses on .NET technologies, especially ASP.NET. In 2003 the company introduced QualiSite, one of the first enterprise content-management systems developed 100% with .NET technologies.
Patrick is well known in the German developer community as an author and also as a trainer and speaker. He has published over half a dozen books covering C# and ASP.NET, including two famous German code books ASP.NET mit C# Kochbuch and ASP.NET mit VB .NET Kochbuch. Patrick is recognized by Microsoft as an MVP for .NET technologies, and he's also a founder member of the German Microsoft Code Wise program. You can reach Patrick via his web site, www.aspnet2.de.
About the Technical Reviewer
Marc Höppner is a software developer and architect with 15+ years of experience in object-oriented design and programming. He's a founding member and managing director for NeoGeo New Media (www.neogeo.com) in Germany, a software development and consulting company specializing in custom .NET-based applications and thin-client client/server systems for both national and international clients. As an early adopter of many Microsoft technologies such as ASP.NET, the .NET Framework, Office 2003, and SQL Server Yukon, NeoGeo has several years of pure .NET development for real-life projects under its belt.
Marc also is a member of Microsoft's Quality Board for MSDN. Sometimes he writes technical articles and helps out Microsoft as a speaker and expert at technical conferences. Sometimes he even has time left over to enjoy family life with his wife and son, and he enjoys music and karate.
Wow, there are so many people that helped me realize this book project. First of all, I would like to thank my team at PGK, the company I'm working for. Michael Brunnhuber did a really good job in translating the book just in time while I wrote it in German. I only had a few weeks to learn the technology, write a book, translate it—yeah, I really need to thank him! Thanks also to Marc Höppner from NeoGeo, who reviewed the book and who gave me a lot of inspiration.
I want to thank the team at Apress as well. Gary and Julian hadn't seen any content or even a table of contents before we completed the whole book. They just believed we could do it in the given timeframe. Thanks to all the other people at Apress who supported this book and its really tough timeline. Thanks to Kylie Johnston for leading the project. Thanks to Nicole LeClerc and Ami Knox for giving so many excellent hints while copy editing. Thanks to Laura Cheu and her "senior citizen" cat for getting the book through production smoothly. Thanks to Doris Wong and all the other people at Apress I didn't mention. I'm looking forward to working with you again!
The biggest "thank you" goes to the folks at Microsoft. Scott Guthrie (fearless leader of the ASP.NET team) introduced me and a few other guys from around Europe to version 2.0 during TechEd in Barcelona. He also answered a lot of questions I had while writing this book. I want to say thanks to Rob Howard for leading the best Alpha program I ever participated in. I'm actually proud to be part of it. Stacey Giard did a great job in bringing it all together and getting the folks at Apress under NDA. A lot of other people from the ASP.NET team have worked on the Alpha forums. My special thanks go to andlin, AndresS, appana, bash_MS, bleroy, bobbyv, BradMi, CarlosAg, ClayCo, danmor, Eilon, glenko, jdixon, johndund, kashif, keithsmith, mharder, mikepope, omar_k, phuff, russellc, samsp, sangitap, Scott Louvau, scottim, ShankuN, SimonCal, SusanC, SWarren, tinghaoy, Wayne King, YugangW, and all the other people I've unfortunately not mentioned here.