Levi, Ray & Shoup, Inc.
  • Courses
  • Site Content

AT-ASPC8 - ASP.NET Using C# (VS 2008)

This five-day course provides a comprehensive and practical hands-on introduction to developing Web applications using ASP.NET 3.5 and C#. It includes an introduction to using ASP.NET AJAX to build rich client applications. ASP.NET is introduced as a Web programming platform that overcomes a number of limitations of ASP. Its architecture is outlined, including the role of compilation, the Page class and code-behind. Web Forms are introduced, including server controls, viewstate, life cycle, and the event model. Request/response HTTP programming using ASP.NET is covered as are ASP.NET Web applications, and caching in ASP.NET. Data access is covered in some detail, including an introduction to ADO.NET, Language Integrate Query (LINQ), and the powerful data access controls provided by ASP.NET 3.5. The final section of the course introduces rich client-side development with ASP.NET AJAX and the architecture and programming of the HTTP pipeline.

Click here to print this page »

Prerequisites


A working knowledge of C# and .NET Framework. Knowledge of JavaScript is recommended.

Detailed Class Syllabus


Introduction to ASP.NET


Web Application Fundamentals
Creating a Virtual Directory
Benefits of ASP.NET
An Echo Program
ASP.NET Features
Compiled Code
Server Controls
Browser Independence
Separation of Code and Content
State Management

Web Forms Architecture


Web Forms Architecture
HelloCodebehind.aspx
HelloCodebehind.aspx.cs
Page Class
Inheriting from Page Class
Web Forms Life Cycle
View State
Web Forms Event Model
Page Processing
Page Events
Page Properties
Page Directive
Tracing
Code-Behind in ASP.NET 2.0
ASP.NET 2.0 Code-Behind Page

ASP.NET and HTTP


Classical Web Programming
Active Server Pages Object Model
Request/Response Objects
HTML Code
ASP Code
Request/Response in ASP.NET
HttpRequest Class
Properties of HttpRequest
Using HttpRequest Class
HTTP Collections
HttpResponse Class
Redirect
HttpUtility
Echo Program in ASP.NET
Echo.aspx
EchoBack.aspx
GET and POST Compared
QueryString and Forms Collections

Web Applications Using Visual Studio


Using Visual Studio
Visual Web Developer
Using Components in ASP.NET 2.0
Compilation Error
Shadow Copying
Temporary Copy of the Component
ASP.NET Applications
Sessions
Global.asax
Web Application Life Cycle
Global.asax
Log Class
StringStore Class
Data Binding
Session Data
Sessions Using IIS
Absolute Positioning
Adding Global.asax File
XHTML
XHTML in Visual Studio

State Management and Web Applications


Session and Application State
Session Object
Page_Load
Session Variable Issues
Session State and Cookies
Session State Timeout
Session State Store
Application State
Implementing Application State
Global.asax
Users.aspx.cs
Multithreading Issues
Bouncing the Web Server
Cookies
Cookies and ASP.NET
HttpCookie Properties
Acme Travel Agency Case Study
State Management Techniques

Server Controls


Server Controls in ASP.NET
HTML Server Controls
Using HTML Server Controls
HTML vs. Web Forms Server Control
Code for Login
HTML Controls in Visual Studio
Using HTML Controls
Web Controls
Validation Controls
Required Field Validation
Regular Expression Validation
Rich Controls
Copying a Web Site
User Controls
Using a User Control
Copyright.ascx
Copyright.ascx.cs

Caching in ASP.NET


What Is Caching?
Need for Caching (Why Cache?)
Data to be Cached – Time Frame
ASP vs. ASP.NET Response Model
Caching in ASP.NET
Three Types of Caching in ASP.NET
Output Caching
@ OutputCache Directive
@ OutputCache – Attributes in Detail
VaryByParam in Detail
HttpCachePolicy Class
Page Fragment Caching
Common Mistakes in Using Fragment Caching
Data Caching or Application Caching
Add an Item to the Cache Object
Insert and Add Methods
Expiration
Problems in Caching

ASP.NET Configuration and Security


One-minute Introduction to XML!
ASP.NET Configuration - Overview
Multi-level Configuration
Configuration Hierarchy
Web.Config File Structure
Web.Config Sections
Application Settings
ASP.NET Security – Overview
Role-Based Security and CAS
Types and Steps
Steps in Enabling Role-Based Security
Three Ways to Authenticate
Forms Authentication – Default.aspx
Forms Authentication – Web.Config
Features of Forms Authentication
Forms Authentication Classes
Customizing Forms Authentication
Authentication Source
Forms Authentication – Analysis
Windows Authentication
Windows Authentication – Analysis
Passport Authentication
Passport Authentication – Analysis
Authorization

Debugging, Diagnostics and Error Handling


ASP.NET Diagnostics
Debugging Using Visual Studio
Debugging Calculator
Application-Level Tracing
Tracing Calculator
Using the Page Cache
An ASP.NET Page Without Visual Studio
Attaching to VS Debugger
Preparing to Debug
Trace Messages
Tracing the Calculator Page
Conditional Tracing
Trace Category
Trace Warning
Exceptions in Trace
Errors in ASP.NET
Uncaught Exception
Custom Error Pages

More Server Controls


ASP.NET 2.0 Control Improvements
New Controls in ASP.NET 2.0
Master Pages
Using a Menu Control
Creating Content Pages
TreeView Control
Master Page Application
Visual Studio 2008 Solutions

ADO.NET and LINQ


ADO.NET
ADO.NET Architecture
.NET Data Providers
ADO.NET Interfaces
.NET Namespaces
Connected Data Access
AcmePub Database
Creating a Connection
Using Server Explorer
Performing Queries
ADO.NET with ASP.NET
Web Client Isolation
Web Client Database Code
Using Commands
Creating a Command Object
Using a Data Reader
Use of Session State
Generic Collections
Executing Commands
Parameterized Queries
DataSet
DataSet Architecture
Why DataSet?
DataSet Components
DataAdapter
Data Access Class
Filling a DataSet
Accessing a DataSet
Using a Standalone DataTable
Adding a New Row
Searching and Updating a Row
Deleting a Row
Row Versions
Row State
Iterating Through DataRows
Command Builders
Updating a Database
Language Integrated Query (LINQ)
Bridging Objects and Data
Object Relational Designer
IntelliSense
Basic LINQ Query Operators
Obtaining a Data Source
Filtering
Ordering
Aggregation
Obtaining Lists and Arrays
Deferred Execution
Modifying a Data Source
Performing Inserts via LINQ to SQL
Performing Deletes via LINQ to SQL
Performing Updates via LINQ to SQL

Data Access in ASP.NET 3.5


Data Access in ASP.NET 2.0
SQL Generation Options
Enable Edit and Delete
Editing Records
GridView Control
DetailsView Control
Storing the Connection String
Protecting the Configuration String
FormView Control
Master/Detail Web Pages
Data Binding
Template Editing
Using XML Data
Multiple-Tier Data Access
Object Data Source
Data Access in ASP.NET 3.5
Configuring the ListView
ListView Edit
DataPager Control
LinqDataSource Control
Configuring LinqDataSource

Personalization and Security


Themes
Control Skins
Applying Themes
Security in ASP.NET 2.0
ASP.NET Membership
Login Controls
Web Site Administration Tool
Access Rules
Profile Properties
Using ASP.NET Profile Properties

Introduction to ASP.NET AJAX


Desktop Applications
Web Applications
Plug-Ins
Client-Side Scripting
Script Code
JavaScript in ASP.NET
Dynamic Pages
Efficient Page Redraws
AJAX
Google Maps
ASP.NET AJAX
Partial Page Rendering
UpdatePanel Control
AJAX Extensions Controls
AJAX Client Library
Using the Client Library
ScriptManager Control
Embedded JavaScript Files
Client Library Namespaces
Sys.Debug Tracing
Document Object Model
JavaScript for Simple Calculator
Using the Client Library
JavaScript in Assemblies
Providing a ScriptReference
AJAX Control Toolkit
ACT Controls in Visual Studio
AjaxControlToolkit.dll
Extender Controls
NumericUpDownExtender Control

HTTP Pipeline


Web Applications
ASP.NET Request Processing
ASP.NET Architecture with IIS 5.0
Pipeline Processing
Pipeline Architecture
Customizing the HTTP Pipeline
Customizing Applications
Customizing a Welcome Application
Logger Class
Custom Handlers
IHttpHandler Interface
Custom Handler Configuration
Entry in Configuration File
Extension Mapping in IIS
.ashx Files
string.ashx
Custom Modules
Using DemoModule