|
|
Course 10265A |
![]()
Developing Data Access Solutions
with Microsoft Visual Studio 2010
Course Outline
Length: 5 Days
Description: In this course, experienced developers who
know the basics of data access (CRUD) in Windows client and Web application
environments will learn to optimize their designs and develop better performing
data access code by using the ADO.NET Entity Framework, LINQ, WCF Data
Services, the Sync Framework, and ADO.NET.
At Course
Completion:
After completing this course,
students will be able to:
|
Course Content: |
Module 1: Architecture and Data Access
Technologies
This module describes the commonly used data
access technologies and scenarios in which you are likely to use them.
Lessons
·
Data Access Technologies
·
Data Access Scenarios
Module 2: Building Entity Data Models
This module introduces the concepts of data
modeling, and in particular, Entity Data Models (EDMs). It explains how you can
use EDMs to decouple the conceptual data structure in your applications from
the logical data structure in the data store.
Lessons
·
Introduction to Entity Data Models
·
Modifying the Entity Data Model
·
Customizing the Entity Data Model
Module 3: Querying Entity Data
This module explains how to query an entity
data model by using common methods such as LINQ to Entities, Entity SQL, and
the classes in the EntityClient namespace.
Lessons
·
Retrieving Data by Using LINQ to Entities
·
Retrieving Data by Using Entity SQL
·
Retrieving Data by Using EntityClient
Provider
·
Retrieving Data by Using Stored Procedures
·
Unit Testing Your Data Access Code
Module 4: Creating, Updating, and Deleting Entity
Data
This module introduces you to the ways that the
Entity Framework enables you to modify the data in your database. You apply
changes to the entities managed by the ObjectContext
class. The ObjectContext class is responsible for
tracking all changes to entities and then persisting
these changes to the database on request.
Lessons
·
Understanding Change Tracking in the Entity Framework
·
Modifying Data in an Entity Data Model
Module 5: Handling Multi-User Scenarios by Using
Object Services
This module introduces the concurrency model
that the Entity Framework uses to address the issues faced by applications that
must support multiple users who access the same data simultaneously. It also
describes how the Entity Framework can make use of transactions to ensure data
integrity.
Lessons
·
Handling Concurrency in the Entity Framework
·
Transactional Support in the Entity Framework
Module 6: Building Optimized Solutions by Using
Object Services
This module explains best practices for
designing and building a scalable, optimized data access layer by using Object
Services. The module introduces several techniques that can be used to
optimize the performance of queries that execute against the conceptual model.
Lessons
·
The Stages of Query Execution
·
Change Tracking and Object Materialization
·
Using Compiled Queries
·
Using Design-Time Generated Entity Framework Views
·
Monitoring Performance
·
Performing Asynchronous Data Modifications
Module 7: Customizing Entities and Building
Custom Entity Classes
This module describes how to customize and extend
entities with your own business logic.
Lessons
·
Overriding Generated Classes
·
Using Templates to Customize Entities
·
Creating and Using Custom Entity Classes
Module 8: Using POCO Classes with the Entity
Framework
This module introduces the ways in which you can
define custom entity classes in your Entity Framework application. By default,
Microsoft Visual Studio generates a set of entity classes for you from the
Entity Data Model (EDM). Instead of these generated classes, you may want to
use an existing set of "plain old" CLR objects (POCO) business
classes in your application You can also extend the generated entity classes to
add custom business functionality to your entity objects.
Lessons
·
Requirements for POCO Classes
·
POCO Classes and Lazy Loading
·
POCO Classes and Change Tracking
·
Extending Entity Types
Module 9: Building an N-Tier Solution by Using
the Entity Framework
This module explains how to address the
architectural issues that can arise when building an N-Tier enterprise
application by using the Entity Framework.
Lessons
·
Designing an N-Tier Solution
·
Defining Operations and Implementing Data Transport Structures
·
Protecting Data and Operations
Module 10: Handling Updates in an N-Tier Solution
by Using the Entity Framework
This module describes how you can handle data
modifications in an n-tier solution. The module describes the different
strategies for handling modifications that you should use for the different
alternative formats for transporting data between tiers: data transfer objects
(DTOs), self-tracking entities (STEs), and simple entities (SEs). The module
also describes how to manage the exceptions that can occur during the data
modification process.
Lessons
·
Tracking Entities and Persisting Changes
·
Managing Exceptions in an N-Tier Solution
Module 11: Building Occasionally Connected
Solutions
This module describes how to access offline
or occasionally connected data in client applications.
Lessons
·
Offline Data Caching by Using XML
·
Using the Sync Framework
Module 12: Querying Data by Using WCF Data
Services
Windows Communication Foundation (WCF) Data
Services enable you to create highly flexible data services that can be used to
provide access to data across the Internet or a corporate network. You can
access these services by using REST-style URIs, and they can be easily consumed
by a wide variety of applications. As WCF Data Services are build on top of standard Internet protocols such as
HTTP and the Atom Publishing Protocol, they are an ideal choice for delivering
data to AJAX applications and Rich Interactive Applications built using
technologies such as Microsoft Silverlight.Lessons
·
Introduction to WCF Data Services
·
Creating a WCF Data Service
·
Consuming a WCF Data Service
·
Protecting Data and Operations in a WCF Data Service
Module 13: Updating Data by Using WCF Data
Services
This module describes how to use WCF Data
Services to create, update, and delete data. WCF Data Services use standard
internet protocols such as HTTP and the Atom Publishing Protocol to enable
update access to data across the Internet or a corporate network.Lessons
·
Creating, Updating, and Deleting Data in a WCF Data Service
·
Preventing Unauthorized Updates and Improving Performance
·
Using WCF Data Services with Nonrelational
Data
Module 14: Using ADO.NET
ADO.NET is a highly flexible framework for
building applications that require access to data held in a data
source. This module introduces ADO.NET and explains how you can use it to
develop scalable, high-performance, data-driven applications.
Lessons
·
Retrieving and Modifying Data by Using ADO.NET Commands
·
Retrieving and Modifying Data by Using DataSets
·
Managing Transactions and Concurrency in Multiuser Scenarios
Module 15: Using LINQ to SQL
ADO.NET provides a mechanism that enables you to
build applications that can query and maintain data that is held in a variety
of sources in a database-agnostic manner. However, building applications by
using ADO.NET requires that you are familiar with the Structured Query Language
(SQL) language and features of the database management system that you are
connecting to. Language-Integrated Query (LINQ) to SQL provides a higher-level
abstraction for managing data that is held in a Microsoft SQL Server database,
and is an ideal stepping stone for migrating ADO.NET applications toward the
ADO.NET Entity Framework. This module introduces LINQ to SQL and explains how
you can use it to abstract the low-level details of ADO.NET queries by
developing against a logical data model.
Lessons
·
Implementing a Logical Data Model by Using LINQ to SQL
·
Managing Performance and Handling Concurrency