Course Catalog
Curriculum Guides
  .NET
  Java/J2EE
  XML
Downloads
Buy Courseware
Customization
News
Authors
Technical Library
FAQ
About Object Innovations
Opportunities
Contact Us
Home

 

 

   
www.objectinnovations.com
info@objectinnovations.com
877-558-7246 (toll free)  
781-466-8012  

4121.  ADO.NET for Web Applications Using C#

Rev. 4.7

 

This three-day intensive course teaches the essential elements of ADO.NET such that at the end of the course the programmer is able to utilize its tremendous database manipulation powers to build effective database applications. The course includes a major case study demonstrating the use of ADO.NET in a realistic setting. It is current to .NET 4.6, Visual Studio 2015 and SQL Server 2014.

 

The course opens with an overview of ADO.NET and its relation to previous Microsoft data access technologies. It includes a discussion of ADO.NET architecture, main interfaces and classes, and programming with both the connected and disconnected models. The database for the case study is introduced.

 

The next two chapters cover in detail Connection and Command objects, which are essential in both connected and disconnected database access scenarios. The following chapter covers DataReaders, which provide a fast, forward-only reading capability. Programming with DataReaders bears a close resemblance to programming with the vintage recordset object.

 

Then the course focuses on the backbone of ADO.NET: DataSet and its related classes, such as DataAdapter, DataTable, DataRow, DataColumn, DataRelation, TableMappings and ColumnMappings. DataSet is able to handle multiple tables while remaining disconnected. It is eminently suited for building highly scalable applications for the Web. The close relationship between ADO.NET and XML is covered in detail. Transactions and concurrency are covered.

 

Additional features of ADO.NET are covered, including asynchronous operations, multiple active result sets and bulk copy. The last chapter covers Language Integrated Query (LINQ) and Microsoft’s Entity Framework.

 

There are numerous example program implemented in a multiple-tier architecture, with separate tiers for data access and user interface. The course uses the LocalDB version of SQL Server 2014 Express, which is recommended by Microsoft for developers. An appendix discusses moving from LocalDB to SQL Server.

 

This course comes with a separate lab manual that has detailed instructions for labs implementing ADO.NET programs with Web Forms clients. A parallel course, 4120 ADO.NET Using C#, provides a lab manual for Windows Forms clients. The Student Guide and Lab Manual are bound together in a single volume.

 

LEARNING OBJECTIVES

 

·         Understand the architecture and main classes of ADO.NET

·         Gain fluency in programming ADO.NET using C#

·         Gain a thorough understanding of the use of disconnected DataSets for building highly scalable applications

·         Acquire a working knowledge of the tight coupling of XML with ADO.NET

·         Learn how to use additional features in ADO.NET, including asynchronous operations, multiple active result sets, and bulk copy

·         Acquire a working knowledge of LINQ and the Entity Framework

·         Implement a realistic case study that ties together many concepts of ADO.NET in a practical demonstration

 

Course Duration:  3 days

 

Prerequisites:  A basic knowledge of SQL and of programming the .NET Framework using C#. The student should also understand the fundamentals of XML. To get full benefit from the examples in the course the student should be able to write simple Windows Forms applications. A working knowledge of SQL Server is also desirable.

 

1.      Introduction to ADO.NET

Microsoft Data Access Technologies

From ADO to ADO.NET

ADO.NET Architecture

Namespaces and Classes

Interfaces

DataSets and Disconnected Access

First ADO.NET Programs

Acme Computer Case Study

 

2.      ADO.NET Connections

.NET Data Providers

IDbConnection

Connection Classes

Connection Strings

Connection Pooling

Connection Events

Error Handling

 

3.      ADO.NET Commands

IDbCommand

Command Objects

Creating Commands

Executing Commands

Parameterized Queries

Command Types

Using Stored Procedures

Batch Queries

 

4.      DataReaders and Connected Access

DataReaders

IDataReader

IDataRecord

Type-Safe Accessors

Null Columns

ExecuteReader Options

Multiple Result Sets

Obtaining Schema Information

 

5.      Data Sets and Disconnected Access

DataSet

DataAdapter

Command Objects

DataTable

DataColumn

DataRow

Row States and Versions

Accept or Reject Changes

DataTable Events

Updating a Database from a DataSet

Command Builders

 

6.      More About DataSets

Filtering DataTables

Multiple Table DataSets

Schema

Constraints

Relations

Navigating a DataSet

DataMapping

Creating a DataSet Programmatically

 

7.      XML and ADO.NET

Strong Coupling Between ADO.NET and XML

Rendering XML from a DataSet

Controlling XML Output

Reading XML into a DataSet

XML Schema and DataSets

Typed DataSets

Table Adapters

Synchronizing DataSets and XML

XML Serialization

 

8.      Concurrency and Transactions

DataSets and Concurrency

Optimistic Concurrency

Pessimistic Concurrency

Handling Concurrency Violations

ADO.NET Transactions

Database Transactions

 

9.      Additional Features

Asynchronous Database Operations

Multiple Active Result Sets

Bulk Copy

 

10. LINQ and Entity Framework

Language Integrated Query (LINQ)

Bridging Objects and Data

Using Object Relational Designer

Filtering, Ordering and Aggregation

Inserts, Deletes and Updates

LINQ to SQL

LINQ to DataSet

ADO.NET Entity Framework

LINQ to Entities

 

Appendix A. Acme Computer Case Study

 

Appendix B. SQL Server 2014 Express

 

Appendix C. Learning Resources

 

System Requirements

 

Required software is Visual Studio 2015, which includes LocalDB, a lightweight version of SQL Server 2014 Express. The free Visual Studio Community 2015 may be used. The operating system should be Windows 7SP1 or more recent. See the appropriate course Setup Guide for details.

 

A good minimal hardware profile for this course would have a 1.8 GHz or equivalent CPU, 2 GB of RAM, and at least 10 GB of free disk space for tools installation and courseware.