Session 1
Section A: C# and .NET
Introduction
.NET Platform
.NET Features
.NET Resources
.NET Processes
Section B: C# Example
Getting Started
Basic Windows App
View Event Handler
C# Fundamentals
Classes, Objects, Types
Methods
Section C: Console Applications
Comments
Console Objects
Namespaces
Dot Operator
App in Notepad
Compile/Run
Visual Studio App
Build/Run
Section D: Variables and Constants
Declarations
Replaceable Parameters
Variable Assignment
Constants
Set Variables
Variable Usage
Set Enumeration
Section E: Programming Elements
Types
Strings
Identifiers
Statements/Expressions
Whitespace
Section F: Branching Basics
Branch Types
Unconditional
Basic Branching
Return Statements
Local Variables
Debug Branch
Conditional/If
Section G: Switch/Iteration Statements
Switch Expressions
String to Integer
Switch Statements
Iteration Types
For Statements
Iteration Statements
While/Do While
For Loop
Section H: Operators
Usage
Relational
Mathematical
Logical
Short Circuit Eval
Section I: Supporting Operators
Math Operators
Modulus Operator
Prefix/Postfix
Test Logicals
Return True/False
Short Circuit Test
Session 2
Section A: Classes/Objects
Overview
Access Modifiers
Class Methods
This Keyword
Default Constructors
Class Variables
Instantiate an Object
Section B: Classes/Objects (cont.)
Implement a Class
Declare an Instance
Add a Member Variable
Overload a Constructor
Pass in a Value
Review and Run
Section C: Invoking Static Methods
Static Standards
Static Members
Destroying Objects
Dispose Method
Section D: Member Variables
Types of Objects
Value/Reference Types
Pass by Parameters
Pass by References
Pass by Values
Return Multiple Values
Out Keyword
Section E: Properties
Overview
Define Properties
Using Get and Set
Set a Breakpoint
Section F: Inheritance
Hierarchy Levels
Derived Classes
Polymorphism
Override Methods
Pass Enumerated Types
Class Declarations
Step-Through Example
Section G: Boxing/Operator Overload
System.Object
Boxing
Operator Overloading
Type Conversion
Creating Type Roman
Computing the Value
Section H: Conversion Operators
Step-Through Overload
Convert Integer to Roman
Display Results
Implicit Conversion
Explicit Conversion
Session 3
Section A: Interfaces
Overview
Implement Interface
Additional Classes
Build Interface App
CreateInstance
Create Second Interface
Test Second Interface
Section B: Extended Interfaces
Derive Extended Interface
Interface Properties
Interface Methods
Test Extended Interface
Interface as a Parameter
Is Keyword
Step Through Is Code
As Keyword
Section C: Arrays
Overview
Foreach Loop
Create Array
Iterate For/Foreach
Initialize Array Content
Section D: Multi-Dimensional Arrays
Dimensional Array Types
Rectangular Arrays
Initialize Array
Multi-Dimensional Issues
Jagged Arrays
Params Keyword
Section E: Indexers
Overview
Create Indexer
Create/Fill Array
Add Offset into Array
String Indexer
Section F: IEnumerable
Overview
Implement IEnumerator
IEnumerated Objects
Step Through Enumerator
Session 4
Section A: IComparables
ArrayList
IComparable Interface
Utilizing IComparable
Custom Comparison
Custom IComparable
Runtime/Sort Choice
Creating Custom Compare
Section B: Collection Classes
Overview
Queues
Using Queue Class
Stacks
Using Stack Class
Stacks to Arrays
Dictionary/Hashtable
Using Hashtable
Section C: Strings
Overview
String Methods/Properties
StringBuilder Class
Regular Expressions
String Manipulations
Using Properties/Methods
Splitting with Strings
Splitting with Regex
Section D: Exceptions
Overview
Try/Catch/Finally
Throw an Exception
Using a Catch Block
Special Exception Handler
Finally Block
Using HelpLink/StackTrace
Section E: Nested Exceptions
Overview
Using Custom Exceptions
Looping Catch Blocks
Creating a Nesting
Step Through Nesting
Section F: Delegates
Overview
Delegating Methods
Implementing Delegates
Delegates as Parameters
Section G: Delegates (cont.)
Step Through Delegate
Invoking Delegate Methods
Static Delegates
Delegates as Properties
Section H: Multicast Delegates
Overview
Using Multicast
Invoke Multiple Methods
Session 5
Section A: Events
Implementing Events
Sample Event Program
Event Handling
Event Notification
Event Classes
Section B: Events (cont.)
Run Event Program
Debug Event Program
Register Delegate to Event
Add Method/Set Index
EventArgs Instance
Fire New Event
Add Offset/Catch Event
Section C: Windows Applications
Windows vs. Web Apps
Basic Window Form
Windows App by Hand
Set Event Handler
Save/Compile
Use Visual Studio.NET
Modify Application
Section D: Windows Forms
Create New Project
Check Box
Radio Buttons
Output Label
Section E: Windows Forms (cont.)
Checked List Box
Additional Controls
View Code/Run
Section F: XML Comments
Overview
Using XML Comments
XML Documentation
XML as HTML Files
Section G: Relational Databases
Overview
Database Fundamentals
Database Components
Database Structure
SQL Server Diagrams
Section H: Analyzing Database Queries
SQL
Query Analyzer
Building Queries
Refining Information
Session 6
Section A: ADO.NET Objects
Object Model
Data Objects
Create ADO Applications
SqlDataAdapter
ListBox
OleDbDataAdapter
Section B: Data Relationships
DataGrids in ADO
SqlConnection Object
SqlCommand Object
DataAdapter
Populate DataGrid
Relating Data
Section C: Data Relationships (cont.)
Multiple Tables/DataGrid
DataRelation Object
Test/Debug ADO App
Use Debug Tools
Show Order Details
Section D: Updates
Overview
Populate ListBox
Update Displayed Data
Update Drop-Down Menu
Update Database Data
Update Multiple Tables
Section E: Transactions
Overview
Stored Procedures
Use Stored Procedures
Pass Parameters
Transaction Support
Connection Transaction
Commit/Rollback
Section F: Update Using DataAdapter
Update DataSet
DataSet Method
Map Column Names
Update with ADO.NET
Update with DataAdapter
Session 7
Section A: Concurrency
Overview
Sproc
Params for Concurrency
ADO.NET w/Concurrency
CommandBuilder
Section B: Web Forms
Overview
ASP.NET Web App
Add Label/Button
Run Web App
Controls
ASP.NET Events
Section C: Web Forms (cont.)
Create DataGrid
Bind DataGrid
DataGrid Controls
Create New Method
Create DataRowView
Extract DataItem
Event Handling TableCells
Section D: Attributes
Overview
Attribute Targets
Custom Attributes
Use Attributes
Create Custom Attributes
Named Attributes
ILDasm
Section E: Reflections
Overview
Array of Attributes
Discovery
Late Binding
Section F: Threads
Multi-Threading Support
Time Slicing
Create Implicit Threads
Joining/Killing Threads
Sleep
Join Threads
Abort Thread
Session 8
Section A: Synchronization
Overview
Concurrency Issues
Interlocked Increment
Lock
Threading Problems
Section B: Streaming Data
Overview
Explore Directory
Read/Write Streams
Buffered Stream
StreamReader/Writer
Section C: Asynchronous I/O
Overview
Callback Delegate
Test Constructor
Buffers/Token
Buffering at Work
HttpWebRequest
Web Streaming Objects
Read Page from Web
Section D: Network I/O
Network Streaming
Sockets/Ports
Support Network I/O
Server Side
Client Side
Server/Client Interaction
Section E: Network I/O (cont.)
Asynch Network I/O
Client Handler
Asynch Read/Write
Send Text String
Asynch File Read
Asynch File Streaming
Section F: Serialization
Overview
Binary Serialization
Serialize to Disk
Deserialize
Nonserialized Option
Section G: ActiveX
Overview
Create ActiveX Control
Create VB Project
ActiveX Event Handler
Register Control
Add Control to Toolbox
Create .NET Project