DN21 - ADO.NET Development
Duration5 Days (customisation)

Course Description

ADO.NET is Microsoft's data-access API. ADO.NET has evolved significantly since its emergence in .NET 1.0, and now offers several distinct programming models for accessing data in your applications.

This course covers all of the options in detail. We begin with through coverage of essential concepts such as data providers, connection management, and statement execution. We then look at the disconnected data model, based on datasets, data adapters, and table adapters. A large part of the course is devoted to the Entity Framework and LINQ, where we show how to query and manipulate data in an object-oriented manner.


3-6 months experience in C#. Familiarity with database design and SQL.


What you will learn:

  • Managing connections and executing statements
  • Working with DataSets and disconnected data
  • Using LINQ to query data effectively
  • Querying and updating data using Entity Framework
  • Working with distributed data


For on-site courses (i.e. at your premises), we are more than happy to tailor the course agenda to suit your exact requirements. In many cases, we are able to build your in-house standards and naming conventions into the delivered course.

Course Details

Connecting to a Database and Reading Data
Evolution of ADO.NET
Managing connection strings
Managing connections
Reading data from a database
Connection pooling
Handling SQL exceptions
Executing Commands
Executing query and non-query commands
Calling stored procedures
Specifying parameters
Asynchronous queries
Recap of ACID transactions
Managing local transactions
Managing distributed transactions
Using ADO.NET in GUI Applications
Implementing a data access layer
Binding data to WPF user interfaces
Updating the database
Disconnected Data Access
Populating and saving a DataSet
Adding, modifying, and deleting data in a DataSet
Using DataViews
Creating and Using Typed DataSets
Creating a typed DataSet
Managing data in a typed DataSet
Adding code to a typed DataSet
Adding queries to a typed DataSet
Using DataSets as XML
Getting Started with LINQ
Using LINQ with arrays, collections, and DataSets
LINQ under the hood
LINQ techniques
Performing joins
Using LINQ to SQL
Overview of LINQ to SQL
Defining relations
Generating mapping classes
Inserting, updating, and deleting entities
Saving changes
Handling optimistic concurrency conflicts
Creating an Entity Model Using the Entity Framework
Overview of the Entity Framework
Overview of entity data models
Defining an entity data model
Modifying an entity data model
Working with Data Using the Entity Framework
Using LINQ to Entities
Using Entity SQL
Modifying entities
Attaching/detaching entities
Going Further with Entity Framework Mapping
Defining relationships
Inheritance scenarios
Implementing inheritance mappings
Entity Framework POCOs
Getting started with POCOs
POCO configuration
Working with POCO objects
WCF Data Services
Getting started with WCF Data Services
WCF Data Services walkthrough
Additional considerations
Developing Reliable Applications
Using performance counters
Handling exceptions
Protecting data
Using Synchronization Services
Overview of Synchronization Services
Downloading and uploading data by using Synchronization Services