ASP .NET Using C# Training in Providence

Enroll in or hire us to teach our ASP .NET Using C# class in Providence, Rhode Island by calling us @303.377.6176. Like all HSG classes, ASP .NET Using C# may be offered either onsite or via instructor led virtual training. Consider looking at our public training schedule to see if it is scheduled: Public Training Classes
Provided there are enough attendees, ASP .NET Using C# may be taught at one of our local training facilities.
We offer private customized training for groups of 3 or more attendees.

Course Description

This five-day course provides a comprehensive and practical hands-on introduction to developing Web applications using ASP.NET 4.0 and C#. It includes an introduction to ASP.NET MVC, a new Web programming framework that incorporates use of the Model-View-Controller (MVC) pattern. It also includes coverage of using ASP.NET AJAX to build rich client applications. The fundamentals of Web applications are reviewed, and a testbed is established for ASP.NET and Internet Information Services. The architecture of ASP.NET is outlined, including the role of compilation, the Page class and code-behind. Web Forms are introduced, including server controls, view state, life cycle, and the event model. Request/response HTTP programming using ASP.NET is covered as are ASP.NET Web applications, caching in ASP.NET, and the fundamentals of configuration and security. Data access is covered in some detail in two chapters, including an introduction to ADO.NET, Language Integrated Query (LINQ), and the powerful data access controls provided by ASP.NET 4.0. The final section of the course introduces rich client-side development with ASP.NET AJAX and use of the ASP.NET MVC framework.
Course Length: 5 Days
Course Tuition: $2090 (US)


A working knowledge of C#. Previous experience with ASP is desirable, but not essential. Previous exposure to ADO.NET would be helpful.

Course Outline


 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
Page Class
Code-Behind Page Life Cycle
Web Forms Page Life Cycle
View State
Enabling View State for Controls
Web Forms Event Model
Page Processing
Page Events
Page Properties
Page Directive

Classical Web Programming
Active Server Pages Object Model
Request and Response Objects
Request/Response in ASP.NET
HttpRequest Class
Properties of HttpRequest
Using HttpRequest Class
HTTP Collections
HttpResponse Class
GET and POST Compared
QueryString and Forms Collections

 Web Applications Using Visual Studio
Using Visual Studio
Visual Web Developer
Starter Web Site
ASP.NET Empty Web Site
Adding a Web Form
Using Components in ASP.NET
Compilation Error
Shadow Copying
Temporary Copy of the Component
ASP.NET Applications
Web Application Life Cycle
Code in Global.asax
Log Class
Adding Global.asax File
Data Binding
Items Collection
XHTML in Visual Studio
Absolute Positioning

 State Management and Web Applications
Session and Application State
Session Object
Session Variable Issues
Session State and Cookies
Session State Timeout
Session State Store
Application State
Implementing Application State
Multithreading Issues
Bouncing the Web Server
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

 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
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 Analysis
Passport Authentication  Analysis

 Debugging, Diagnostics and Error Handling
ASP.NET Diagnostics
Debugging Using Visual Studio
Debugging Calculator
Application-Level Tracing
Tracing Calculator
Using the Page Cache
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 Control Improvements
Newer Controls in ASP.NET
Master Pages
Creating Content Pages
TreeView Control
Master Page Application
ADO.NET Architecture
.NET Data Providers
.NET Namespaces
Connected Data Access
AcmePub Database
Creating a Connection
Using Server Explorer
Performing Queries
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 Architecture
Why DataSet?
DataSet Components
Data Access Class
Retrieving the Data
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
Basic LINQ Query Operators
Obtaining a Data Source
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 4.0
Data Access in ASP.NET
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 4.0
Using the Entity Data Model
EntityDataSource Control
ListView Edit
DataPager Control
LinqDataSource Control
Configuring LinqDataSource
QueryExtender Control

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

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

Model-View-Controller (MVC)
What is ASP.NET MVC?
Advantages of ASP.NET MVC
Advantages of Web Forms
Visual Studio ASP.NET MVC Project
Starter Application
Simple App with Controller Only
Action Methods and Routing
Action Method Return Type
Rendering a View
Creating a View in Visual Studio
The View Web Page
Passing Data from Controller to View
Embedded Scripts
Using a Model
Controller Using the Model
View Using the Model
Strongly Typed View
Creating Views in Visual Studio
Using Forms
HTML Helper Functions
Handling Form Submission
Model Binding
Greet View
Input Validation
Checking Model Validity
Validation Summary

 Appendix A  Learning Resources

 Appendix B  HTTP Pipeline
Web Applications
Customizing the HTTP Pipeline
Customizing Applications
Customizing a Welcome Application
Logger Class
Custom Handlers
IHttpHandler Interface
.ashx Files
Custom Modules

Course Directory [training on all levels]

Upcoming Classes
Gain insight and ideas from students with different perspectives and experiences.

C# Programming Uses & Stats

C# Programming is Used For:
Windows Applications Business Enterprise Applications Software Development Web Applications
Year Created
In Demand: 
C# along with Java is one of the top languages in demand for employers. 
.Net Library:
C# is integrated with the .Net Library thereby providing access to a vast archive of functionality and support. 
Team Friendly:
Multiple developers can easily work together on a project. 
Compiled Language:
The code that is stored on a public-facing server is in binary form. In other words, if your server gets hacked, the hacker doesn't automatically have access to your source code. 
C# roots are derived from C which means that the structure is transferable to other languages like Java, Objective C, PHP and C++. 

Steep Learning Curve:
For beginners, C# is not the easiest program to start with. 

Windows Application Exclusively:
Any .NET application needs a Windows platform to execute which means that companies using Linux servers would need Windows hosting to run a .Net application. 
Lack of Support for Older .NET:
Many enterprise organizations keep older operating systems because of the many problems that an upgrade can bring to the platform. Microsoft stops supporting older .NET frameworks after a few operating systems upgrades. 
C# Programming Job Market
Average Salary
Job Count
Top Job Locations

New York City 
Mountain View
San Francisco 

Complimentary Skills to have along with C# Programming

Since the .NET development ecosystem spans a wide array of capabilities and tools, it is difficult for .NET developers to know which .NET development skills and training to pursue in order to increase their marketability — and earning potential.  For that reason, learning supplemental languages such as Java, JavaScript, Python, C/C++, and others is expected in today’s competitive skill-set driven playing field.

Interesting Reads Take a class with us and receive a book of your choosing for 50% off MSRP.