4121. ADO.NET for Web
Applications Using C#
Rev. 4.0
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.0, Visual Studio 2010
and SQL Server 2008.
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. Language Integrated
Query (LINQ) is covered in some detail, including LINQ to SQL, LINQ to DataSet
and LINQ to Entities. The ADO.NET Entity Framework is introduced.
There are numerous example program implemented in a multiple-tier
architecture, with separate tiers for data access and user interface. 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.
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 Web 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. Learning Resources
System Requirements
Required software is Visual Studio 2010, Professional Edition or
higher, and SQL Server 2008 Express (which comes with Visual Studio 2010). The
recommended operating system is Windows XP with Service Pack 3 or Windows 7. See
the course Setup Notes for details.
A good minimal hardware profile for this course would have a 2 GHz
or better CPU, 1 GB of RAM, and at least 4 GB of free disk space for tools
installation and courseware.