Foreword xxiAcknowledgments xxvAbout the Authors xxixChapter 1 Introduction 1Chapter 2 Getting Started 13Chapter 3 The Essence of LINQ 39Chapter 4 C# 3.0 Technical Overview 65Chapter 5 Writing Query Expressions 129Chapter 6 Query Operators 175Chapter 7 A Quick Tour of LINQ to SQL 231Chapter 8 Reading Objects with LINQ to SQL 247Chapter 9 Modifying Objects with LINQ to SQL 281Chapter 10 Using Stored Procedures and Database Functions with LINQ to SQL 319Chapter 11 Customizing Entity Persistence and Adding Business Logic 337Chapter 12 LINQ to Entities Overview 349Chapter 13 LINQ to XML: Creation 369Chapter 14 Querying and Editing XML 387Chapter 15 XML Namespaces, Transforms, and Schema Validation 423Chapter 16 Introduction to LINQ Patterns and Practices 465Chapter 17 LINQ Everywhere 487Chapter 18 Conclusion 515Appendix A Tips for Developers 519Index 547
Charlie Calvert, Community Program Manager for the Microsoft C# team, currently focuses his technical energies on LINQ. He has periodically worked with LINQ Chief Architect Anders Hejlsberg both during the development of Delphi and during the development of LINQ. Calvert's ten technical books have sold more than 100,000 copies. They include Delphi 4 Unleashed, C++Builder 3 Unleashed, Delphi 2 Unleashed, Teach Yourself Windows 95 Programming in 21 Days, and Teach Yourself Windows Programming. Dinesh Kulkarni is a Senior Program Manager on Microsoft's .NET Framework team. He was the Program Manager in charge of LINQ to SQL. He was deeply involved in LINQ's planning and implementation from the incubation stage and was lead author for MSDN's authoritative LINQ to SQL paper. Before joining Microsoft, he worked in diverse technical roles ranging from architecting and implementing front-end CASE tools for IBM to designing databases and middleware for a Wall Street hedge fund.