Writing this book has been a daunting task at times. I've relied on several people throughout this project for everything from technical assistance to help with the logistics of writing a book to encouragement and support. In particular, I thank Jeff Richter for his help throughout the project. Not only did Jeff help me get started, but his technical expertise and writing experience have been
In addition, the following individuals helped make sure this book is technically accurate and easily readable: Dennis Angeline, Mason Bendixen, Chris Brown, Christopher Brumme, Alessandro Catorcini, Suzanne Cook, Mike Downen, Patrick Dussud, Greg Fee, Brian Grunkemeyer, Jonathan Hawkins, Jim Hogg, Jonathan Keljo, Sonja Keserovic, Jim Kieley, Raja Krishnaswamy, Tim Kurtzman, Bryan Lamos, Sebastian Lange, WeiWen Liu, Rudi Martin, Frank Peschel-Gallee, Sonia Pignorel, Mahesh Prakriya, Michael Rayhelson, Beysim Sezgin, Alan Shi, Craig Sinclair, Tarik Soulami, Jan Stranik, Sean Trowbridge, Dino Viehland, Kimberly Wolk, and Junfeng Zhang.
The people at Microsoft Press put in untold
Finally, I'm eternally grateful for the people in my personal life who continue to give me so much love and support. In addition to my daughters Erin and Katherine and my wife Maraye, I'd also like to thank Zo Van Eaton and my parents Joe and Audrey Pratschner. I wouldn't have been able to reach this goal without all of you there to help me.
The introduction of Microsoft .NET Framework 2.0 marks the third major release of the
The presence of the .NET programming model in so many different application environments is possible only because the .NET Framework's core execution engine, the Common Language Runtime (CLR), is flexible enough to support application environments with a wide range of requirements. In .NET Framework 2.0, several new extensibility points have been added that make the CLR much more customizable than in previous releases. Fortunately, the same techniques that Microsoft uses to integrate the CLR into products such as Internet Explorer, SQL Server, and Internet Information Server are available for you to achieve the same level of integration between the CLR and your own product.
What Makes This .NET Framework Book Unique?
Numerous books have been written about the .NET Framework and the CLR since their introduction in early 2002. This book is different in that it is
Even if CLR integration or extensibility isn't your current goal, a deeper understanding of .NET Framework programming will help make the applications you're writing today better. For example, learning about the subtleties that can occur when multiple versions of the .NET Framework are installed on the same machine can help you design your application so that it is not affected when a new version of the .NET Framework gets deployed; knowing how application domains are used for isolation can help you build applications that are more reliable and secure. Also, if you happen to be a developer who