Learn your way! Get started

ASP.NET AJAX Using Visual C# 2005

with expert Scott Cate


Course at a glance

Included in these subscriptions:

  • Dev & IT Pro Video
  • Dev & IT Pro Power Pack

Release date 4/30/2008
Level Advanced
Runtime 10h 31m
Closed captioning N/A
Transcript N/A
eBooks / courseware Included
Hands-on labs Included
Sample code Included
Exams Included
Platform Internet Explorer Only


Enterprise Solutions

Need reporting, custom learning tracks, or SCORM? Learn More



Course description

Microsoft has provided the ASP.NET AJAX Extensions, a set of assemblies based on the .NET Framework 2.0, which makes AJAX style web programming extremely simple. A task that used to take weeks; is now simplified to a drag and drop operation.This course quickly dives into the history of AJAX and the simplification of AJAX made possible with the ASP.NET AJAX Extensions. You’ll learn how to make partial page updates, work with Web Services in JavaScript, advanced AJAX debugging techniques, and more.

Prerequisites

This course assumes you have a basic programming background and basic knowledge of Visual C#, HTML, CSS, JavaScript, and building Web-based applications using Visual Studio 2005.

Meet the expert

Scott Cate is the president of a technology company specializing in commercial ASP.NET applications. He is the co-author of the book "Beginning AJAX with ASP.NET" and leader of the Arizona .NET User Group, one of the largest and most active user group communities in the country. Scott has been selected as a Microsoft MVP for ASP.NET for several years in a row and is a member of ASP.NETInsiders.com, a group devoted to providing early feedback directly to the Microsoft ASP.NET Team.

Course outline



Module 1

Introduction to AJAX (19:01)
  • Introduction (02:16)
  • AJAX Terminology (01:51)
  • Making AJAX Easy (00:30)
  • Adding JavaScript (02:04)
  • LoadFamily (03:48)
  • Reviewing the Code (01:01)
  • Partial Page Update (01:07)
  • DHTML and AJAX (02:16)
  • Using Arrays (03:37)
  • Summary (00:26)
Introducing JSON (25:14)
  • Introduction (00:51)
  • What is JSON? (02:07)
  • Construct a JSON Object (03:36)
  • Using JSON (03:27)
  • Names Array (02:39)
  • Running the Name Array (00:15)
  • JSON Tips (02:09)
  • Prototypes and Enclosures (02:46)
  • Prototypes v. Enclosures (05:15)
  • Memory Footprint (01:38)
  • Summary (00:26)
AJAX Framework Benefits (25:34)
  • Introduction (00:59)
  • ASP.NET AJAX Framework (02:31)
  • Demo: Web Service (00:55)
  • Demo: Fancy DataGrid (01:19)
  • DataGrid Problems (00:35)
  • Overview: ScriptManager (01:00)
  • Overview: UpdatePanel (01:47)
  • How Does It Work? (02:07)
  • Demo: ConsumeProducts (03:08)
  • StringBuilder Explained (01:52)
  • Framework Shortcuts (01:04)
  • Debugging in AJAX (02:35)
  • Sys.Debug.traceDump (03:36)
  • Review of AJAX Benefits (00:58)
  • Summary (01:02)

Module 2

Script Manager (26:48)
  • Introduction (01:16)
  • Overview: ScriptManager (02:50)
  • Client Side Framework (01:34)
  • Add JavaScript File (04:00)
  • View Loaded Scripts (00:29)
  • ScriptManager Limitations (01:03)
  • ScriptReference ScriptMode (01:29)
  • ScriptManager ScriptMode (01:04)
  • Localization (00:30)
  • Add Resource File (01:21)
  • Register Resource File (03:30)
  • Load an Embedded Resource (01:26)
  • Add WebResource (01:28)
  • View Available Languages (03:21)
  • Summary (01:20)
Web Services (36:28)
  • Introduction (01:40)
  • Overview: Web Services (01:33)
  • Create Web Service (00:53)
  • ScriptMethod (00:22)
  • ScriptService (04:17)
  • Add ServiceReference (00:42)
  • TestAddition() Function (05:32)
  • Create CityList (00:36)
  • View Support Files (01:09)
  • Add DropDownList (01:41)
  • Test DropDownList (02:25)
  • Add New WebService (01:43)
  • Add ScriptManager (00:53)
  • GetCities (05:41)
  • Add Display Markup (02:48)
  • Test WebService (00:46)
  • How it all Works (02:44)
  • Summary (00:55)
ScriptManagerProxy (15:21)
  • Introduction (01:42)
  • Overview: ScriptManagerProxy (01:01)
  • Demo: ScriptManagerProxy (00:40)
  • Demo: Add User Control (03:14)
  • View Page (00:26)
  • Script Manager Benefits (01:29)
  • Executing Timed Events (00:49)
  • Demo: Add a Timer (01:04)
  • Code: Timer1_Tick event (00:38)
  • View Timer Page (00:44)
  • Modify Server Callback (00:47)
  • Demo: Use Multiple Timers (02:11)
  • Summary (00:31)

Module 3

UpdatePanel - Server (18:58)
  • Introduction (01:39)
  • Overview: UpdatePanel (01:32)
  • Demo: UpdatePanel (01:38)
  • Partial Page Update (04:24)
  • Multiple UpdatePanels (03:01)
  • Always v. Conditional Mode (01:44)
  • Block v. Inline Render (01:51)
  • Content Outside UpdatePanel (02:20)
  • Summary (00:45)
UpdatePanel - Client (28:13)
  • Introduction (01:13)
  • Overview: Client Events (02:00)
  • Demo: PageRequestManager (04:02)
  • sys.application.add_init (02:33)
  • initializeRequest (04:45)
  • Demo: Debug JavaScript (03:58)
  • pageLoaded (02:48)
  • Use a Stringbuilder (04:33)
  • UpdatePanel Triggers (01:16)
  • Summary (01:00)
Triggers / UpdateProgress (22:37)
  • Introduction (02:27)
  • Overview: Triggers (01:33)
  • Demo: Create a Trigger (01:53)
  • Add AsyncPostBack Trigger (01:44)
  • Add PostBack Trigger (02:16)
  • ChildrenAsTriggers (00:19)
  • UpdateMode (02:14)
  • Overview: UpdateProgess Ctl (01:47)
  • Demo: UpdateProgress Ctl (02:47)
  • DisplayAfter Property (01:05)
  • Multiple Update Panels (02:08)
  • AssociatedUpdatePanelID (01:20)
  • Summary (00:55)

Module 4

Introducing Control Toolkit (31:46)
  • Introduction (01:40)
  • Overview: Control Toolkit (00:00)
  • Accordion (00:50)
  • AlwaysVisibleControl (00:25)
  • Animation/AutoComplete (02:22)
  • Calendar/CascadingDropDown (01:48)
  • ConfirmButton/DragPanel (00:44)
  • DropDown/DropShadow (00:52)
  • DynamicPopulate (00:21)
  • FilteredTextBox (00:52)
  • HoverMenu/ListSearch (02:04)
  • MaskedEdit/ModalPopup (02:27)
  • MutuallyExclusiveCheckbox (00:36)
  • NoBot/NumericUpDown (02:22)
  • PagingBulletedList (01:15)
  • PasswordStrength (00:48)
  • PopupControl (00:54)
  • Rating/ReorderList (02:01)
  • ResizableControl (00:57)
  • RoundedCorners/Slider (01:53)
  • SlideShow/Tabs (01:40)
  • TextBoxWatermark (00:42)
  • ToggleButton (00:23)
  • UpdatePanelAnimation (01:11)
  • ValidatorCallout (02:02)
  • Summary (00:26)
Using the Control Toolkit (27:02)
  • Introduction (00:45)
  • Five Popular Controls (01:28)
  • Demo: ListSearch (04:43)
  • Demo: PagingBulletList (03:19)
  • Demo: AutoComplete (05:11)
  • Demo: ModalPopup (04:52)
  • Demo: RoundedCorners (06:04)
  • Summary (00:36)
ToolkitScriptManager (14:08)
  • Introduction (00:39)
  • Overview (01:43)
  • Demo: ScriptManager (01:53)
  • UpdatePanelAnimationExtend. (00:40)
  • Create New Animation (02:07)
  • View Scripts Created (00:36)
  • Demo: ToolkitScriptManager (00:26)
  • Combine Scripts (01:36)
  • CombineScriptHandlerUrl (01:03)
  • Handler Explained (02:58)
  • Summary (00:21)

Module 5

Using Toolkit Animations (34:15)
  • Introduction (00:41)
  • Toolkit Animation Extender (01:51)
  • Demo: Animations (01:33)
  • Add AnimationExtender (02:33)
  • Create Sequence (00:09)
  • Sequential Sequence (00:38)
  • Parallel Sequence (00:26)
  • AnimationTarget property (02:08)
  • Collapse/Resize Animation (03:06)
  • Expand/Resize Animation (04:21)
  • Naming Convention Tip (01:06)
  • scriptAction Sequence Event (00:38)
  • Add JavaScript Block (05:49)
  • enableAction Animation (05:55)
  • Add Sequence Animation (02:55)
  • Summary (00:20)
Build an AJAX App (Part 1) (23:22)
  • Introduction (00:53)
  • Task Overview (01:38)
  • View Setup App (00:31)
  • Create Master Page (01:08)
  • Add Reference to CSS (00:30)
  • Add Login Control (00:52)
  • ASP.NET Website Admin Tool (01:16)
  • Create New User (00:53)
  • Add Roles (01:22)
  • Include DB in Project (00:55)
  • Add LoginView Control (01:50)
  • Create Default.aspx Page (00:58)
  • View Default.aspx (00:56)
  • Create New Database (03:48)
  • Create DataSet (00:35)
  • Create Table Adapter (04:54)
  • Summary (00:14)
Build an AJAX App (Part 2) (25:02)
  • Introduction (00:30)
  • Task Overview (00:58)
  • Add GridView (01:00)
  • Configure DataSource (01:43)
  • Test Gridview (00:30)
  • Configure GridView (01:13)
  • Edit Gridview Columns (01:39)
  • View ObjectDataSource (05:06)
  • Insert New Data (00:28)
  • Add LoginView Control (00:27)
  • Add DetailsView (03:30)
  • Create Partial Page Postback (02:36)
  • Modify LoginView Control (04:27)
  • Summary (00:49)

Module 6

Build an AJAX App (Part 3) (17:05)
  • Introduction (00:57)
  • Task Overview (00:50)
  • Add New Web Service (03:27)
  • Reference Web Service (02:10)
  • Submit Question Button (02:50)
  • Utilize ScriptMethod (01:40)
  • Add Callbacks (02:01)
  • Test the App (02:20)
  • Summary (00:45)
Debug JavaScript (33:05)
  • Introduction (01:21)
  • Overview: Debug JavaScript (02:14)
  • Demo: Debug Sample (01:29)
  • View Page Source (02:21)
  • Enable Script Debugging (01:22)
  • VS Debug Menu (02:02)
  • Attach to IE (00:54)
  • VS Script Explorer (02:39)
  • ScriptManager ScriptMode (02:24)
  • Test Breakpoint (01:40)
  • Step into JavaScript Function (01:17)
  • Quick Watch Window (02:11)
  • Add a Watch (02:23)
  • Debug JavaScript (01:06)
  • Sys.StringBuilder (06:35)
  • Summary (01:00)
Debug in Internet Explorer (26:49)
  • Introduction (01:26)
  • Overview: Debug in IE (04:35)
  • Demo: Debug in IE (02:44)
  • Nikhil"s Web Dev Helper (00:17)
  • HTTP Logging (01:51)
  • Deserialize to JSON (02:46)
  • Script Console (01:09)
  • Sys.Debug (01:15)
  • Create Debug Scripts (06:03)
  • trace v. traceDump (00:41)
  • Script Class Browser (03:23)
  • Summary (00:33)

Module 7

AJAX Client Library (48:25)
  • Introduction (00:46)
  • JavaScript Shortcuts (01:43)
  • Demo: JavaScript Shortcuts (04:13)
  • $get shortcut (01:00)
  • $addHandler shortcut (02:17)
  • $removeHandler shortcut (01:56)
  • $clearHandler shortcut (02:42)
  • JavaScript Extensions (01:11)
  • Demo: JavaScript Extensions (01:07)
  • Array.add (04:40)
  • Array.dequeue (03:32)
  • Array.insert (03:21)
  • Array.removeAt (03:49)
  • String.format (03:54)
  • Use endsWith (01:50)
  • Use startsWith (00:26)
  • Use trim/trimStart/trimEnd (02:42)
  • Demo: Parsing Extensions (00:28)
  • Boolean.parse (01:47)
  • Number.parseLocale (01:07)
  • Cast / Convert Types (03:08)
  • Summary (00:34)
Exploring Sys NameSpace (29:52)
  • Introduction (00:46)
  • Overview (02:37)
  • .Application (07:16)
  • .StringBuilder (00:28)
  • append() function (00:19)
  • toString() function (00:54)
  • JavaScriptSerializer (01:12)
  • serialize() function (02:36)
  • deserialize() function (02:49)
  • .WebForms (00:13)
  • PageRequestManager (04:53)
  • .UI.DomElement (05:09)
  • Summary (00:34)

Module 8

Object Oriented AJAX (42:32)
  • Introduction (01:20)
  • Overview (01:30)
  • Demo: OOP Demo (00:26)
  • Register a Namespace (00:23)
  • Create Auto Class (02:36)
  • Create Class Instances (03:22)
  • Register the Auto Class (01:10)
  • Implement IDisposable (00:46)
  • Create Inheritance Chain (03:23)
  • Create Helper Functions (08:25)
  • View in Browser (03:15)
  • Object Inheritance (00:45)
  • Interfaces Explained (01:48)
  • Create IHPerform Interface (02:09)
  • Register IHPerfrom Interface (09:08)
  • Review: JavaScript Created (01:34)
  • Summary (00:27)
Intro to Deployment (35:27)
  • Introduction (01:02)
  • Overview: Deployment (02:30)
  • Demo: Intro to Deployment (00:26)
  • Web Site (01:13)
  • AJAX Web Application (02:47)
  • Explore the BIN Folder (00:48)
  • Explore Web Site Files (01:55)
  • Add Script Manager to Site (04:21)
  • Global Assembly Cache (GAC) (01:32)
  • AJAX 2.0 Extensions (01:41)
  • web.config File Settings (04:37)
  • Deployment Options (00:36)
  • Publish Web Site (02:49)
  • Using Roeder"s Reflector (05:23)
  • Publish Web Project (03:20)
  • Summary (00:19)
Database Deployment (24:23)
  • Introduction (01:44)
  • Overview: DB Deployment (02:56)
  • Demo: Deployment (00:20)
  • App_Data Folder (00:13)
  • View Connection String (01:48)
  • XCopy Deployment (02:38)
  • ASP.NET Web Admin Tool (01:38)
  • Include db in Project (01:33)
  • View machine.config (02:55)
  • Add membership node (01:14)
  • aspnet_regsql.exe (02:31)
  • Prepare Membership DB (03:04)
  • View Membership Tables (00:37)
  • Summary (01:05)