Learn your way! Get started

ASP.NET Visual C# 2005: Additional Topics

with experts Andy Baron, Ken Getz


Course at a glance

Included in these subscriptions:

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

Release date 8/29/2007
Level Intermediate
Runtime 11h 55m
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

In this course you will be introduced to many exciting ASP.NET 2.0 features that will help you get the most out of the .NET Framework and make you a better and more efficient Visual C# 2005 developer. You will become familiar with the debugging and tracing features in Visual Studio 2005 that help you quickly troubleshoot issues. You will also learn how to read and write XML data using XML DOM, how to work with ASP.NET Profile features and ASP.NET Web Parts, and how to take advantage of creating your own user-defined control. And finally, you will learn how you to build mobile applications using Visual C# 2005 so your clients can get information on their PDAs and smartphones.

Meet the experts

Andy Baron is a nationally recognized industry expert specializing in Visual Basic, Visual C#, ASP.NET, ADO.NET, SQL Server, and SQL Server Business Intelligence. He is an experienced consultant, author, and editor for several industry publications and speaker at industry conferences. Andy has also been repeatedly selected as a Microsoft MVP for his contributions to Microsoft's online support.

Ken Getz is a featured instructor for several of our Visual Studio courses. He is a Visual Basic and Visual C# expert and has been recognized multiple times as a Microsoft MVP. Ken is a seasoned instructor, successful consultant, and the author or co-author of several best-selling books. He is a frequent speaker at technical conferences like Tech-Ed, VSLive, and DevConnections and he has written for several of the industry's most-respected publications including Visual Studio Magazine, CoDe Magazine, and MSDN Magazine.

Course outline



Module 1

Introduction to XML (39:06)
  • Introduction (02:38)
  • Getting Started with XML (01:33)
  • XML Document Object Model (01:16)
  • Tree-Based XML Handling (04:16)
  • Non-Cached XML Handling (00:36)
  • What is the XML DOM (00:53)
  • Investigating the Sample File (00:25)
  • View Simple.xml (04:21)
  • Load XML Data (01:25)
  • Run the Sample Application (01:38)
  • Code: Load XML Data (03:29)
  • Work with a Node's Children (01:24)
  • Working with Node's Children (01:24)
  • Code: Child Nodes (02:22)
  • Iterate through All Nodes (01:01)
  • Code: Iterate All Nodes (03:30)
  • Retrieve Element Nodes (01:28)
  • Code: Rtrv. Element Nodes (02:49)
  • Retrieve Just Text Nodes (00:32)
  • Code: Retrieve Text Nodes (01:33)
  • Summary (00:22)
Using XPath / Searching XML (25:49)
  • Introduction (01:06)
  • Nodes Matching a Criterion (00:50)
  • Getting Started with XPath (01:30)
  • Code: Select Node Details (02:01)
  • More About XPath (01:55)
  • Code: Select Add. Node Dtls. (02:40)
  • Search w/ XML Namespaces (01:07)
  • XML: Srch. XML Namespaces (01:41)
  • Code: Srch. XML Namespaces (04:37)
  • Reference to a Specific Node (00:27)
  • Navigate to Related Nodes (00:58)
  • Retrieve Attributes of a Node (00:52)
  • Code: Select a Single Node (00:43)
  • Code: Retrieve Node Relatives (01:18)
  • Code: Retrieve Attributes (00:38)
  • Code: Retrieve a Single Attrib. (02:01)
  • Summary (01:18)
Creating and Modifying XML (23:19)
  • Introduction (00:53)
  • Create XML Programmatically (00:50)
  • Add Nodes (01:53)
  • Add or Delete Elements (00:50)
  • Remove all Nodes / Attributes (00:17)
  • Code: Create XML (02:55)
  • Code: Modifying Nodes (03:53)
  • Code: Remove All Nodes (00:56)
  • Add / Delete Attributes (00:54)
  • Modify the Value of an Element (00:30)
  • Code: Work with Attributes (02:50)
  • Code: Modify Element (00:34)
  • Code: Modify Attribute (01:34)
  • Determine Well Formed XML (00:20)
  • Handle XML Loading Errors (00:33)
  • View Bad XML (00:46)
  • Code: Handle Exception (00:14)
  • Code: Investigate Errors (00:53)
  • Summary (01:35)

Module 2

Configuring Debugging (34:06)
  • Introduction (00:48)
  • New Debugging Features (03:57)
  • Configuring Debugging (02:03)
  • Config. Project-Level Debug (00:55)
  • Enable Debug in web.config (01:28)
  • Add Line Numbers (00:50)
  • Run the Sample (01:06)
  • Setting Breakpoints (00:47)
  • Step Over (02:31)
  • Customize Debug Toolbar (01:39)
  • Step Into/Out (01:23)
  • Examine Breakpoints Window (02:02)
  • Debug in Break Mode (06:06)
  • DataTips and Visualizers (07:57)
  • Summary (00:28)
Debugging Features (25:02)
  • Introduction (00:35)
  • Breakpoint Menu / Options (01:33)
  • Tracepoints (06:30)
  • Debugging Windows (01:00)
  • Locals Window (01:21)
  • Watch / Quick Watch Window (03:17)
  • Call Stack (01:44)
  • Threads Window (01:20)
  • Exceptions/Handling Errors (00:16)
  • Exception Assistant (03:56)
  • Redirecting Users (03:00)
  • Summary (00:24)
Debugging Javascript and SQL (25:49)
  • Introduction (00:53)
  • Configuring Script Debugging (08:05)
  • Use Script Debugger (02:02)
  • Set Breakpoint in Client Script (01:01)
  • Debug Script in Resource Files (00:32)
  • Use Script Explorer (04:33)
  • Debugging SQL Code (00:41)
  • Working w/ Data Connections (02:03)
  • Debugging Stored Procedures (04:42)
  • Summary (01:14)

Module 3

Introducing Profiles (52:32)
  • Introduction (01:16)
  • Introducing Profiles (01:45)
  • Profile Features (04:36)
  • Strongly Typed Access (02:09)
  • Storing Profile Data (00:48)
  • Explore aspnetdb.mdf (02:31)
  • Considering Profiles (03:08)
  • Configuring Profiles (00:35)
  • Setting up Web.Config (03:10)
  • Adding New Properties (01:30)
  • Creating Property Groups (00:20)
  • Using Custom Types (01:50)
  • SQL Server for Profile Storage (00:29)
  • Configuring SQL Server (02:20)
  • Modifying Provider Behavior (01:19)
  • Investigate machine.config (05:48)
  • Investigate Sample Site (00:22)
  • Default.aspx (01:49)
  • Run the Sample (04:04)
  • Code: UserInfo.aspx (02:23)
  • Code: ProfileManagerDemo (02:25)
  • Code: DisplayInfo.aspx (02:14)
  • Code: Global.asax (00:42)
  • Modify Anon. User Info (03:36)
  • Summary (01:11)
Anonymous / Custom Profiles (26:55)
  • Introduction (01:20)
  • Working w/ Anon. Profiles (01:59)
  • Enable Anonymous Profiles (00:33)
  • Run the Sample (01:25)
  • Migrating Anonymous Users (01:02)
  • Code: Profile_OnMigrateAnon. (05:14)
  • Custom Profile Provider (02:05)
  • Custom XML Profile Provider (03:28)
  • Review the XML File (02:19)
  • Code: Custom Profile Provider (04:30)
  • Cmpr. Profiles/Session State (01:44)
  • Summary (01:09)
Page / Application Tracing (21:07)
  • Introduction (00:50)
  • Two Kinds of Tracing (01:01)
  • Review Trace Output (01:38)
  • Control Tree (01:30)
  • Other Trace Categories (01:27)
  • Server Variables (00:46)
  • Programmatic Tracing (03:04)
  • Trace.Write-Trace.Warn (03:10)
  • Application-Level Tracing (05:36)
  • Output Window Trace (01:14)
  • Summary (00:45)

Module 4

Listeners and Switches (35:18)
  • Introduction (01:14)
  • Trace Switches (06:24)
  • Configure Tracing (04:05)
  • EventLog Listener (00:18)
  • TextWriter Trace Listener (02:29)
  • Cleanup (00:11)
  • Set Up a Trace Listener (05:41)
  • Run the Trace Listener (03:19)
  • System Trace Info (02:09)
  • Trace Listeners (07:05)
  • Trace.axd (01:34)
  • Summary (00:45)
ASP.NET Events (23:01)
  • Introduction (01:01)
  • Overview: Health Monitoring (02:23)
  • Overview: TraceFinished Event (01:38)
  • Code to Generate Trace Msgs. (01:42)
  • Run the Demo (00:34)
  • Create DB to Log Events (03:49)
  • Explore the Database (00:39)
  • Setup HealthMonitoring Config File (02:51)
  • View web.config.comments (04:30)
  • Config. App for Event Logging (00:42)
  • Test the Event Logging (02:41)
  • Summary (00:24)
User Controls (18:14)
  • Introduction (01:28)
  • Two-Kinds of UDC (01:17)
  • Creating a User Control (00:55)
  • User Control (01:01)
  • Add User Control to a Page (00:56)
  • Edit User Control (00:30)
  • View the Source (00:55)
  • Add to Existing Functionality (01:47)
  • Investigating the StateList UC (00:43)
  • StateList User Control (00:51)
  • Code: StateList User Control (04:23)
  • Embed the Control on a Page (02:40)
  • Summary (00:42)

Module 5

Custom Controls (44:49)
  • Introduction (01:13)
  • Create a Custom Web Ctrl. (01:41)
  • Add New Control to a Page (05:12)
  • The StateDropDownList Ctrl. (00:30)
  • StateDropDownList Control (03:16)
  • Rendering the Control (00:50)
  • HtmlTextWriter Class (01:02)
  • Creating the Control (01:17)
  • Adding Control Attributes (02:58)
  • Rendering the Ctlr. Contents (01:59)
  • Code: Control Properties (01:00)
  • Code: Postback Data (01:07)
  • Interact with the Control (01:34)
  • Property Behavior w/Attrib. (03:24)
  • Working with Postback Data (01:37)
  • IPostBackDataHandler Interf. (00:50)
  • Providing a Unique ID (00:12)
  • The PostBack Sequence (01:41)
  • Loading Postback Data (00:51)
  • Raising Postback Events (01:24)
  • Code: Loading Postback Data (02:22)
  • Code: Raise Postback Events (01:35)
  • Specifying a Toolbox Icon (01:19)
  • Create a Toolbox Bitmap (04:24)
  • Summary (01:18)
Web Parts in Action (26:38)
  • Introduction (01:31)
  • Personalize in Browse Mode (08:48)
  • Design Mode (02:03)
  • Edit Mode (03:16)
  • Explore User Control (02:54)
  • The Close Menu Item (00:29)
  • Catalog Mode (06:51)
  • Summary (00:42)
Connecting Web Parts (22:32)
  • Introduction (00:39)
  • Connect Mode (03:40)
  • Utilize the Connect Verb (02:12)
  • Test the Connection (00:52)
  • Test Custom Verb (00:35)
  • Edit Close/Minimize (01:15)
  • Edit Export Mode (03:17)
  • Edit Imported Web Part Cat. (02:01)
  • Edit Properties Within Scope (05:16)
  • Reset My Data (00:58)
  • Reset Shared Data (01:20)
  • Summary (00:20)

Module 6

Web Part Server Controls (21:58)
  • Introduction (00:23)
  • WebPartManager (02:32)
  • ProxyWebPartManager (02:46)
  • WebPartZone (03:16)
  • CatalogZone (01:20)
  • EditorZone (00:39)
  • ConnectionsZone (00:22)
  • View WebParts in the Toolbox (00:38)
  • WebPartManager Review (02:24)
  • WebPartZone Review (01:29)
  • CatalogZone Review (01:08)
  • EditorZone Review (02:59)
  • ConnectionsZone Review (01:33)
  • Summary (00:22)
Coding Web Parts (44:43)
  • Introduction (00:35)
  • Ctrl. a Page's Display Mode (04:47)
  • Ctrl. Personalization Scope (03:21)
  • WebBrowsable/Personalizable (02:22)
  • Reset Personalization Data (04:08)
  • Web Part Personalization Rev. (03:42)
  • Coding Connections (05:36)
  • Web Part Connections Review (05:58)
  • User Controls As Web Parts (03:22)
  • Custom Controls As Web Parts (04:57)
  • Creating Cust. Web Parts Rev. (05:20)
  • Summary (00:30)
Introducing Mobile Controls (31:56)
  • Introduction (01:00)
  • Problems with the Old (01:05)
  • Many Different Standards (01:10)
  • What Are You To Do (00:29)
  • Overview (00:56)
  • Features (01:12)
  • Developers Tools (00:52)
  • Test Mobile Pages (02:12)
  • How Do Mobile Pages Work (00:47)
  • How Do Mobile Pages Browse (01:48)
  • Simple Mobile Web Page (00:36)
  • Create Mobile Web Page (02:35)
  • Use a StyleSheet Control (01:45)
  • Add / Modify Controls (01:40)
  • Add Code to Controls (01:12)
  • Test the Page in IE (01:04)
  • Test on an Emulator (03:21)
  • Test on SmartPhone Emulator (05:11)
  • Test on PocketPC Emulator (01:55)
  • Summary (00:58)

Module 7

Investigating Mobile Controls (45:44)
  • Introduction (00:43)
  • Container Controls (00:42)
  • Transfer Controls (02:06)
  • Code: Container Controls (01:35)
  • Container Controls (00:37)
  • Code: Transfer Controls (02:18)
  • Transfer Controls (04:31)
  • Text Display Controls (00:13)
  • Compare TextView/Label Ctrl. (00:45)
  • TextView/Label Controls (01:49)
  • List and Selection Controls (00:16)
  • List vs SelectionList Controls (02:19)
  • Code: List/SelectionList Ctrl. (05:13)
  • List/SelectionList Controls (01:18)
  • ObjectList Control (01:01)
  • Demo: ObjectList Control (02:00)
  • Code: ObjectList Control (03:06)
  • Properties: ObjectList Ctrl. (03:39)
  • View in IE Browser (00:52)
  • Validation Controls (01:05)
  • Code: Validation Controls (01:46)
  • Validation Controls (02:31)
  • Image Display Controls (00:14)
  • Miscellaneous Controls (00:39)
  • Calendar Control (03:16)
  • Summary (01:01)
Programmatic Caching (41:55)
  • Introduction (01:03)
  • ASP.NET IIS Tip (02:41)
  • ASP.NET Caching Review (03:30)
  • Overview: Output Caching (02:51)
  • Prog. Expiration Policies (02:34)
  • New Caching Features in 2.0 (03:34)
  • Declarative Output Caching (01:37)
  • Code-Based Output Caching (01:04)
  • View Output Cache .aspx Pages (03:01)
  • Programmatic Page Caching (01:02)
  • Declarative Multi-Version (01:42)
  • Code-Based Multi-Version (02:09)
  • Code-Based Data Caching (03:44)
  • Overview: Caching Data (02:37)
  • Code: Code-Based Data Cach. (03:34)
  • Code: Cache.Insert (03:47)
  • Summary (01:18)

Module 8

SQL Cache Dependency (44:07)
  • Introduction (00:50)
  • SqlCacheDependency Object (06:20)
  • Create DB from VS2005 (07:04)
  • Running the DB Project (01:36)
  • Config DB for Cache Dep. (07:28)
  • Enable/List a Table (02:12)
  • SqlCache Tables (01:53)
  • SqlCache Stored Procs. (01:40)
  • Declarative Dependency (03:55)
  • Enable sqlCacheDependency (01:21)
  • Other Cache Settings (00:38)
  • Declarative SqlCacheDep (04:36)
  • SqlDataSource Control (03:57)
  • Summary (00:30)
Query Based Dependencies (40:19)
  • Introduction (00:46)
  • CreateDairyProductsDep. (10:36)
  • View web.config (00:41)
  • SQL2k Query-Based Cach. (02:37)
  • Enable Query Notifications (04:58)
  • View Global.asax (01:56)
  • SQL2k5 Declarative Caching (04:00)
  • SQL Rules for Query Notify (05:27)
  • Use Code to Config. Notify (02:24)
  • SqlDataSource for SQL2k5 (03:50)
  • Query-Based Caching SQL2k5 (02:32)
  • Summary (00:27)