Professional ADO.NET 3.5 with LINQ and the Entity Framework

Professional ADO.NET 3.5 with LINQ and the Entity Framework

Author: Roger Jennings

Publisher: John Wiley & Sons

Published: 2009-02-23

Total Pages: 676

ISBN-13: 0470473886

DOWNLOAD EBOOK

Language Integrated Query (LINQ), as well as the C# 3.0 and VB 9.0 language extensions to support it, is the most import single new feature of Visual Studio 2008 and the .NET Framework 3.x. LINQ is Microsoft's first attempt to define a universal query language for a diverse set of in-memory collections of generic objects, entities persisted in relational database tables, and element and attributes of XML documents or fragments, as well as a wide variety of other data types, such as RSS and Atom syndication feeds. Microsoft invested millions of dollars in Anders Hejlsberg and his C# design and development groups to add new features to C# 3.0—such as lambda expressions, anonymous types, and extension methods—specifically to support LINQ Standard Query Operators (SQOs) and query expressions as a part of the language itself. Corresponding additions to VB 9.0 followed the C# team's lead, but VB's implementation of LINQ to XML offers a remarkable new addition to the language: XML literals. VB's LINQ to XML implementation includes XML literals, which treat well-formed XML documents or fragments as part of the VB language, rather than requiring translation of element and attribute names and values from strings to XML DOM nodes and values. This book concentrates on hands-on development of practical Windows and Web applications that demonstrate C# and VB programming techniques to bring you up to speed on LINQ technologies. The first half of the book covers LINQ Standard Query Operators (SQOs) and the concrete implementations of LINQ for querying collections that implement generic IEnumerable, IQueryable, or both interfaces. The second half is devoted to the ADO.NET Entity Framework, Entity Data Model, Entity SQL (eSQL) and LINQ to Entities. Most code examples emulate real-world data sources, such as the Northwind sample database running on SQL Server 2005 or 2008 Express Edition, and collections derived from its tables. Code examples are C# and VB Windows form or Web site/application projects not, except in the first chapter, simple command-line projects. You can't gain a feel for the behavior or performance of LINQ queries with "Hello World" projects that process arrays of a few integers or a few first and last names. This book is intended for experienced .NET developers using C# or VB who want to gain the maximum advantage from the query-processing capabilities of LINQ implementations in Visual Studio 2008—LINQ to Objects, LINQ to SQL, LINQ to DataSets, and LINQ to XML—as well as the object/relational mapping (O/RM) features of VS 2008 SP1's Entity Framework/Entity Data Model and LINQ to Entities and the increasing number of open-source LINQ implementations by third-party developers. Basic familiarity with generics and other language features introduced by .NET 2.0, the Visual Studio integrated development environment (IDE), and relational database management systems (RDBMSs), especially Microsoft SQL Server 200x, is assumed. Experience with SQL Server's Transact-SQL (T-SQL) query language and stored procedures will be helpful but is not required. Proficiency with VS 2005, .NET 2.0, C# 2.0, or VB 8.0 will aid your initial understanding of the book's C# 3.0 or VB 9.0 code samples but isn't a prerequisite. Microsoft's .NET code samples are primarily written in C#. All code samples in this book's chapters and sample projects have C# and VB versions unless they're written in T-SQL or JavaScript. Professional ADO.NET 3.5: LINQ and the Entity Framework concentrates on programming the System.Linq and System.Linq.Expressions namespaces for LINQ to Objects, System.Data.Linq for LINQ to SQL, System.Data.Linq for LINQ to DataSet, System.Xml.Linq for LINQ to XML, and System.Data.Entity and System.Web.Entity for EF's Entity SQL. "Taking a New Approach to Data Access in ADO.NET 3.5," uses simple C# and VB code examples to demonstrate LINQ to Objects queries against in-memory objects and databinding with LINQ-populated generic List collections, object/relational mapping (O/RM) with LINQ to SQL, joining DataTables with LINQ to DataSets, creating EntitySets with LINQ to Entities, querying and manipulating XML InfoSets with LINQ to XML, and performing queries against strongly typed XML documents with LINQ to XSD. "Understanding LINQ Architecture and Implementation," begins with the namespaces and C# and VB language extensions to support LINQ, LINQ Standard Query Operators (SQOs), expression trees and compiled queries, and a preview of domain-specific implementations. C# and VB sample projects demonstrate object, array, and collection initializers, extension methods, anonymous types, predicates, lambda expressions, and simple query expressions. "Executing LINQ Query Expressions with LINQ to Objects," classifies the 50 SQOs into operator groups: Restriction, Projection, Partitioning, Join, Concatenation, Ordering, Grouping, Set, Conversion, and Equality, and then lists their keywords in C# and VB. VS 2008 SP1 includes C# and VB versions of the LINQ Project Sample Query Explorer, but the two Explorers don't use real-world collections as data sources. This describes a LINQ in-memory object generator (LIMOG) utility program that writes C# 3.0 or VB 9.0 class declarations for representative business objects that are more complex than those used by the LINQ Project Sample Query Explorers. Sample C# and VB queries with these business objects as data sources are more expressive than those using a arrays of a few integers or last names. "Working with Advanced Query Operators and Expressions," introduces LINQ queries against object graphs with entities that have related (associated) entities. This begins with examples of aggregate operators, explains use of the Let temporary local variable operator, shows you how to use Group By with aggregate queries, conduct the equivalent of left outer joins, and take advantage of the Contains() SQO to emulate SQL's IN() function. You learn how to compile queries for improved performance, and create mock object classes for testing without the overhead of queries against relational persistence stores. "Using LINQ to SQL and the LinqDataSource," introduces LINQ to SQL as Microsoft's first O/RM tool to reach released products status and shows you how to autogenerate class files for entity types with the graphical O/R Designer or command-line SqlMetal.exe. This also explains how to edit *.dbml mapping files in the Designer or XML Editor, instantiate DataContext objects, and use LINQ to SQL as a Data Access Layer (DAL) with T-SQL queries or stored procedures. Closes with a tutorial for using the ASP.NET LinqDataSource control with Web sites or applications. "Querying DataTables with LINQ to DataSets," begins with a comparison of DataSet and DataContext objects and features, followed by a description of the DataSetExtensions. Next comes querying untyped and typed DataSets, creating lookup lists, and generating LinqDataViews for databinding with the AsDataView() method. This ends with a tutorial that shows you how to copy LINQ query results to DataTables. "Manipulating Documents with LINQ to XML," describes one of LINQ most powerful capabilities: managing XML Infosets. This demonstrates that LINQ to XML has query and navigation capabilities that equal or surpasses XQuery 1.0 and XPath 2.0. It also shows LINQ to XML document transformation can replace XQuery and XSLT 1.0+ in the majority of common use cases. You learn how to use VB 9.0's XML literals to constructs XML documents, use GroupJoin() to produce hierarchical documents, and work with XML namespaces in C# and VB. "Exploring Third-Party and Emerging LINQ Implementations," describes Microsoft's Parallel LINQ (also called PLINQ) for taking advantage of multiple CPU cores in LINQ to Objects queries, LINQ to REST for translating LINQ queries into Representational State Transfer URLs that define requests to a Web service with the HTML GET, POST, PUT, and DELETE methods, and Bart De Smet's LINQ to Active Directory and LINQ to SharePoint third-party implementations. "Raising the Level of Data Abstraction with the Entity Data Model," starts with a guided tour of the development of EDM and EF as an O/RM tool and heir apparent to ADO.NET DataSets, provides a brief description of the entity-relationship (E-R) data model and diagrams, and then delivers a detailed analysis of EF architecture. Next comes an introduction to the Entity SQL (eSQL) language, eSQL queries, client views, and Object Services, including the ObjectContext, MetadataWorkspace, and ObjectStateManager. Later chapters describe eSQL and these objects in greater detail. Two C# and VB sample projects expand on the eSQL query and Object Services sample code. "Defining Conceptual, Mapping, and Storage Schema Layers," provides detailed insight into the structure of the *.edmx file that generates the *.ssdl (storage schema data language), *.msl (mapping schema language), and *.csdl files at runtime. You learn how to edit the *.edmx file manually to accommodate modifications that the graphic EDM Designer can’t handle. You learn how to implement the Table-per-Hierarchy (TPH) inheritance model and traverse the MetadataWorkspace to obtain property values. Four C# and VB sample projects demonstrate mapping, substituting stored procedures for queries, and TPH inheritance. "Introducing Entity SQL," examines EF's new eSQL dialect that adds keywords to address the differences between querying entities and relational tables. You learn to use Zlatko Michaelov's eBlast utility to write and analyze eSQL queries, then dig into differences between eSQL and T-SQL SELECT queries. (eSQL v1 doesn't support INSERT, UPDATE, DELETE and other SQL Data Manipulation Language constructs). You execute eSQL queries against the EntityClient, measure the performance hit of eSQL compared to T-SQL, execute parameterize eSQL queries, and use SQL Server Compact 3.5 as a data store. C# and VB Sample projects demonstrate the programming techniques. "Taking Advantage of Object Services and LINQ to Entities," concentrates manipulating the Object Services API's ObjectContext. It continues with demonstrating use of partial classes for the ModelNameEntities and EntityName objects, executing eSQL ObjectQuerys, and deferred or eager loading of associated entities, including ordering and filtering the associated entities. Also covers instructions for composing QueryBuilder methods for ObjectQuerys, LINQ to Entities queries, and parameterizing ObjectQuerys. "Updating Entities and Complex Types," shows you how to perform create, update, and delete (CUD) operations on EntitySets and manage optimistic concurrency conflicts. It starts with a detailed description of the ObjectContext.ObjectStateManager and its child objects, which perform object identification and change tracking operations with EntityKeys. This also covers validation of create and update operations, optimizing the DataContext lifetime, performing updates with stored procedures, and working with complex types. "Binding Data Controls to the ObjectContext", describes creating design-time data sources from ObjectContext.EntitySet instances, drag-and-drop addition of BindingNavigator, BindingSource, bound TextBox, and DataGridView controls to Windows forms. You also learn how to update EntityReference and EntitySet values with ComboBox columns in DataGridView controls. (You can’t update EntitySet values directly; you must delete and add a new member having the required value). This concludes with a demonstration of the use of the ASP.NET EntityDataSource control bound to GridView and DropDownList controls. "Using the Entity Framework As a Data Source," concentrates on using EF as a data source for the ADO.NET Data Services Framework (the former codename "Project Astoria" remains in common use), which is the preferred method for deploying EF v1 as a Web service provider. (EF v2 is expected to be able to support n-tier data access with Windows Communication Foundation [WCF] directly). A Windows form example uses Astoria's .NET 3.5 Client Library to display and update entity instances with the Atom Publication (AtomPub or APP) wire format. The Web form project uses the AJAX Client Library and JavaScript Object Notation (JSON) as the wire format.


Programming Entity Framework

Programming Entity Framework

Author: Julia Lerman

Publisher: "O'Reilly Media, Inc."

Published: 2010-08-09

Total Pages: 920

ISBN-13: 1449399657

DOWNLOAD EBOOK

Get a thorough introduction to ADO.NET Entity Framework 4 -- Microsoft's core framework for modeling and interacting with data in .NET applications. The second edition of this acclaimed guide provides a hands-on tour of the framework latest version in Visual Studio 2010 and .NET Framework 4. Not only will you learn how to use EF4 in a variety of applications, you'll also gain a deep understanding of its architecture and APIs. Written by Julia Lerman, the leading independent authority on the framework, Programming Entity Framework covers it all -- from the Entity Data Model and Object Services to WCF Services, MVC Apps, and unit testing. This book highlights important changes for experienced developers familiar with the earlier version. Understand the core concepts you need to make the best use of the EF4 in your applications Learn to query your data, using either LINQ to Entities or Entity SQL Create Windows Forms, WPF, ASP.NET Web Forms, and ASP.NET MVC applications Build and consume WCF Services, WCF Data Services, and WCF RIA Services Use Object Services to work directly with your entity objects Create persistent ignorant entities, repositories, and write unit tests Delve into model customization, relationship management, change tracking, data concurrency, and more Get scores of reusable examples -- written in C# (with notes on Visual Basic syntax) -- that you can implement right away


Professional ASP.NET 3.5 SP1 Edition

Professional ASP.NET 3.5 SP1 Edition

Author: Bill Evjen

Publisher: John Wiley & Sons

Published: 2011-01-07

Total Pages: 1864

ISBN-13: 1118058682

DOWNLOAD EBOOK

Professional ASP.NET 3.5 SP1 In C# and VB ASP.NET 3.5 brings the power of Visual Studio 2008 along with the multitude of language improvements in C# 2008 and Visual Basic 2008 as well as powerful new technology called LINQ, together with the ASP.NET 2.0 Framework you already know and love. Packed with valuable coverage of ASP.NET 3.5 SP1, this essential resource offers both C# and VB examples throughout the book, and shares new and updated content on the ADO.NET Entity Framework, ADO.NET Dynamic Data, and ADO.NET Data Services. While ASP.NET 3.5 boasts server controls like the ListView and the incredibly flexible GridView, it also includes advancements in AJAX technology combined with JavaScript debugging features in Visual Studio 2008. With this book, a stellar author team covers the new controls in the AJAX toolbox, the back button history, and script combining, and they also examine the new capabilities of WCF including changes to DataContractSerializer. In addition, the accompanying CD-ROM features the entire book in PDF format. What you will learn from this book The concepts underlying the server control and its pivotal role in ASP.NET development How to create templated ASP.NET pages using the master page feature How to work with data from enterprise databases including SQL Server Ways to debug, package, and deploy ASP.NET applications, monitor their health and performance, and handle errors How to retrieve, update, and delete data quickly and logically using LINQ with side-by-side examples comparing LINQ to existing techniques Ways to localize your web site in multiple languages for a world-wide audience Methods for adding AJAX capabilities to your ASP.NET applications The many benefits of the new data access additions Ways to use and extend the Provider Model for accessing data stores, processes, and more What freeware tools you need in Scott Hanselman's ASP.NET Ultimate Developer Tools appendix Who this book is for This book is for programmers and developers who are looking to make the transition to ASP.NET 3.5 SP1 with Visual Studio 2008 and either C# 3.0 (2008) or Visual Basic 9 (2008). CD-ROM includes the full book in PDF format and a selection of 7 Wrox Blox mini e-books including: Internet Explorer 8 and Its Impact on Your ASP.NET Web Sites Jumping from ASP.NET to Silverlight 2 Leverage LINQ in ASP.NET 3.5 Projects Note: CD-ROM/DVD and other supplementary materials are not included as part of eBook file.


Beginning ASP.NET 4

Beginning ASP.NET 4

Author: Imar Spaanjaars

Publisher: John Wiley & Sons

Published: 2010-07-23

Total Pages: 840

ISBN-13: 0470881623

DOWNLOAD EBOOK

The definitive programming guide to ASP.NET, by popular author and Microsoft MVP Imar Spaanjaars Updated for ASP.NET 4, this introductory book retains its helpful examples and step-by-step format from the previous version and keeps the style of offering code examples written in both C# and Visual Basic. Beloved author and Microsoft ASP.NET MVP walks you through ASP.NET, Microsoft's technology for building dynamically generated Web pages from database content. You'll discover many improvements that ASP.NET 4 offers over the previous version, such as the ASP.NET MVC framework, Ajax improvements, jQuery support, and more. You'll gradually build a Web site example that takes you through the processes of building basic ASP.NET Web pages, adding features with pre-built server controls, designing consistent pages, displaying data, and more. Popular author and Microsoft ASP.NET MVP Imar Spaanjaars updates you on the latest updates to ASP.NET 4, Microsoft's technology for building dynamic Web pages from database content Shows you how the 4 version differs from ASP.NET 3.5 and reviews its new features, including the ASP.NET MVC framework, various Ajax improvements, jQuery support, and more Spaanjaars's distinct writing style puts you at ease with learning ASP.NET 4.


Professional Visual Studio Extensibility

Professional Visual Studio Extensibility

Author: Keyvan Nayyeri

Publisher: John Wiley & Sons

Published: 2008-03-31

Total Pages: 554

ISBN-13: 0470370270

DOWNLOAD EBOOK

Visual Studio is a development IDE created by Microsoft to enable easier development for Microsoft programming languages as well as development technologies. It has been the most popular IDE for working with Microsoft development products for the past 10 years. Extensibility is a key feature of Visual Studio. There have not been many books written on this aspect of Visual Studio. Visual Studio Extensibility (VSX) can be considered a hard topic to learn for many developers in comparison with most .NET related topics. Also, its APIs are very complex and not very well written. Some may refer to these APIs as “dirty” because they do not have good structure, naming convention, or consistency. Visual Studio is now 10 years old. It was created during the COM days for COM programming but later migrated to .NET. However, Visual Studio still relies heavily on COM programming. It was revamped when moving to the .NET platform but still contains its COM nature; this fact is what makes it harder for .NET developers to work with VSX. Because it is an older product built on two technologies, it has produced inconsistency in code. Although there are problems with the current version of VSX, the future looks bright for it. The many different teams working on the software have been moved into one umbrella group known as the Visual Studio Ecosystem team. Throughout the past 10 years Visual Studio has continued to grow and new extensibility features have been added. Learning all of the options with their different purposes and implementations is not easy. Many extensibility features are broad topics such as add-ins, macros, and the new domain-specific language tools in Visual Studio. Learning these topics can be difficult because they are not closely related to general .NET programming topics. This book is for .NET developers who are interested in extending Visual Studio as their development tool. In order to understand the book you must know the following material well: Object-oriented programming (OOP), the .NET Framework and .NET programming, C# or Visual Basic languages, some familiarity with C++, some familiarity with XML and its related topics, and Visual Studio structure and usage. A familiarity with COM programming and different .NET technologies is helpful. The aims of this book are to: Provide an overview of all aspects of VSX Enable readers to know where/when to use extensibility Familiarize readers with VS Extensibility in detail Show readers the first steps and let them learn through their own experiences Use examples, sample code, and case studies to demonstrate things in such a way that helps readers understand the concepts Avoid bothering readers with long discussions and useless code samples In order to use this book, and get the most out of it, there are some technical requirements. You must have the following two packages installed on your machine to be able to read/understand the chapters and test code samples: Visual Studio 2008 Team System Edition (or other commercial editions) Visual Studio 2008 SDK 1.0 (or its newer versions) You will need to buy Visual Studio 2008 to register for an evaluation version. The Free Express editions of Visual Studio do not support the extensibility options. The Visual Studio SDK is needed in order to read some of the chapters in the book and can be downloaded as a free package. The operating system doesn’t matter for the content of the book, but all code was written with Visual Studio 2008 Team System Edition in Windows Vista x86. Chapters 1, 2, and 3 will give you an introduction to the basic concepts you need to understand before you can move on to the rest of the book. Chapter 4 discusses the automation model, which is an important prerequisite for many


Entity Framework Core Cookbook

Entity Framework Core Cookbook

Author: Ricardo Peres

Publisher: Packt Publishing Ltd

Published: 2016-11-09

Total Pages: 325

ISBN-13: 1785880586

DOWNLOAD EBOOK

Leverage the full potential of Entity Framework with this collection of powerful and easy-to-follow recipes About This Book Learn how to use the new features of Entity Framework Core 1 Improve your queries by leveraging some of the advanced features Avoid common pitfalls Make the best of your .NET APIs by integrating with Entity Framework Who This Book Is For This book is for .NET developers who work with relational databases on a daily basis and understand the basics of Entity Framework, but now want to use it in a more efficient manner. You are expected to have some prior knowledge of Entity Framework. What You Will Learn Master the technique of using sequence key generators Validate groups of entities that are to be saved / updated Improve MVC applications that cover applications developed using ASP.NET MVC Core 1 Retrieve database information (table, column names, and so on) for entities Discover optimistic concurrency control and pessimistic concurrency control. Implement Multilatency on the data side of things. Enhance the performance and/or scalability of Entity Framework Core Explore and overcome the pitfalls of Entity Framework Core In Detail Entity Framework is a highly recommended Object Relation Mapping tool used to build complex systems. In order to survive in this growing market, the knowledge of a framework that helps provide easy access to databases, that is, Entity Framework has become a necessity. This book will provide .NET developers with this knowledge and guide them through working efficiently with data using Entity Framework Core. You will start off by learning how to efficiently use Entity Framework in practical situations. You will gain a deep understanding of mapping properties and find out how to handle validation in Entity Framework. The book will then explain how to work with transactions and stored procedures along with improving Entity Framework using query libraries. Moving on, you will learn to improve complex query scenarios and implement transaction and concurrency control. You will then be taught to improve and develop Entity Framework in complex business scenarios. With the concluding chapter on performance and scalability, this book will get you ready to use Entity Framework proficiently. Style and approach Filled with rich code-based examples, this book takes a recipe-based approach that will teach .NET developers to improve their understanding of Entity Framework and help them effortlessly apply this knowledge in everyday situations.


Pro ADO.NET Data Services

Pro ADO.NET Data Services

Author: John Shaw

Publisher: Apress

Published: 2009-01-29

Total Pages: 327

ISBN-13: 1430216158

DOWNLOAD EBOOK

Pro ADO.NET Data Services: Working with RESTful Data is aimed at developers interested in taking advantage of the REST–style data services that ADO.NET Data Services (formerly code–named Astoria) provides. The book shows how to incorporate ADO.NET Data Services into a wide range of common environments, including BizTalk, Ajax and Silverlight client applications. The material is intended for professional developers who are comfortable with the .NET 3.5 Framework but are coming to ADO.NET Data Services for the first time and want to understand how to integrate it into their own applications and enterprise solutions. The book is packed full with extensive real–world solutions and exercises, ensuring you walk away with a deep understanding of how to use ADO.NET Data Services to your best advantage.


Pro ADO.NET 2.0

Pro ADO.NET 2.0

Author: Sahil Malik

Publisher:

Published: 2005-09-19

Total Pages: 592

ISBN-13:

DOWNLOAD EBOOK

* Provides compact coverage of new ADO.NET features and use of cutting edge tools, such as Visual Studio .NET 2005. * Content and examples take practical focus as opposed to a theoretical, academic treatment. * Heavily trimmed content eliminates information the reader won’t find useful very often.


Modern Data Access with Entity Framework Core

Modern Data Access with Entity Framework Core

Author: Holger Schwichtenberg

Publisher: Apress

Published: 2018-06-27

Total Pages: 665

ISBN-13: 1484235525

DOWNLOAD EBOOK

C# developers, here’s your opportunity to learn the ins-and-outs of Entity Framework Core, Microsoft’s recently redesigned object-relational mapper. Benefit from hands-on learning that will teach you how to tackle frustrating database challenges, such as workarounds to missing features in Entity Framework Core, and learn how to optimize the performance of your applications, head-on! Modern Data Access with Entity Framework Core teaches best practices, guidance, and shortcuts that will significantly reduce the amount of resources you internally dedicate to programming data access code. The proven methods and tools taught in this book, such as how to get better performance, and the ability to select the platform of your choice, will save you valuable time and allow you to create seamless data access. Dive into succinct guidance that covers the gamut-- from installing Entity Framework Core, reverse engineering, forward engineering (including schema migrations), and data reading and modification with LINQ, Dynamic LINQ, SQL, Stored Procedures, and Table Valued Functions- to using third-party products such as LINQPad, Entity Developer, Entity Framework Profiler, EFPlus, and AutoMapper. You'll also appreciate excerpts of conceptual software architecture discussion around Entity Framework Core that might otherwise take years to learn. What You'll Learn Understand the core concepts of Entity Framework Core, as well process models for existing databases (reverse engineering) and the generation of database schemas from object models (forward engineering) Study real-world case studies for hands-on EF Core instruction Get up to speed with valuable database access scenarios and code samples Discover workarounds to augment missing features in Entity Framework Core Use Entity Framework Core to write mobile apps Bonus online appendix covers Entity Framework Core 2.1 release updates Who This Book Is For Software developers who have basic experience with .NET and C#, as well as some understanding of relational databases. Knowledge of predecessor technologies such as ADO.NET and the classic ADO.NET Entity Framework is not necessary to learn from this book.


Professional C# 2008

Professional C# 2008

Author: Christian Nagel

Publisher: John Wiley & Sons

Published: 2011-01-31

Total Pages: 1846

ISBN-13: 1118059468

DOWNLOAD EBOOK

Professional C# 2008 starts by reviewing the overall architecture of .NET in Chapter 1 in order to give you the background you need to be able to write managed code. After that the book is divided into a number of sections that cover both the C# language and its application in a variety of areas.