| Introduction |
|
xxvii | |
| Hardware Requirements |
|
xxvii | |
| Software Requirements |
|
xxviii | |
| Using the CD and DVD |
|
xxviii | |
| How to Install the Practice Tests |
|
xxix | |
| How to Use the Practice Tests |
|
xxix | |
| How to Uninstall the Practice Tests |
|
xxxi | |
| How to Install the Code |
|
xxxi | |
| Microsoft Certified Professional Program |
|
xxxi | |
| Technical Support |
|
xxxii | |
| Evaluation Edition Software Support |
|
xxxii | |
|
Introducing the ASP.NET 2.0 Web Site |
|
|
1 | (50) |
|
|
|
2 | (1) |
|
Lesson 1: Understanding the Players |
|
|
3 | (14) |
|
|
|
4 | (1) |
|
|
|
5 | (1) |
|
Understanding Hypertext Transfer Protocol's Role |
|
|
5 | (8) |
|
|
|
13 | (2) |
|
|
|
15 | (1) |
|
|
|
16 | (1) |
|
Lesson 2: Creating a Web Site and Adding New Web Pages |
|
|
17 | (14) |
|
Understanding the Visual Studio 2005 Web Site Types |
|
|
17 | (1) |
|
The Visual Studio 2005 Solution Files |
|
|
18 | (1) |
|
Looking at the ASP.NET Page Structure |
|
|
18 | (1) |
|
In-Line versus Code-Behind Programming Model |
|
|
19 | (1) |
|
Dynamic Web Site Compilation |
|
|
20 | (1) |
|
|
|
21 | (3) |
|
What's in the Newly Created Web Site? |
|
|
24 | (1) |
|
Adding New Web Pages to the Web Site |
|
|
25 | (1) |
|
Lab: Create a New Web Site |
|
|
26 | (2) |
|
|
|
28 | (1) |
|
|
|
29 | (2) |
|
Lesson 3: Working with Web Configuration Files |
|
|
31 | (6) |
|
Processing the Configuration Files |
|
|
32 | (1) |
|
Modifying the Configuration Files |
|
|
32 | (2) |
|
Lab: Modifying Your Web Site Configuration |
|
|
34 | (1) |
|
|
|
35 | (1) |
|
|
|
35 | (2) |
|
Lesson 4: Using ASP.NET Trace to Explore Web Pages |
|
|
37 | (9) |
|
Enabling and Configuring the ASP.NET Trace Facility |
|
|
37 | (2) |
|
|
|
39 | (2) |
|
Lab: Using the ASP.NET Trace Facility |
|
|
41 | (2) |
|
|
|
43 | (1) |
|
|
|
43 | (3) |
|
|
|
46 | (1) |
|
|
|
46 | (1) |
|
|
|
47 | (1) |
|
|
|
47 | (1) |
|
Case Scenario 1: Creating a New Web Site |
|
|
47 | (1) |
|
Case Scenario 2: Placing Files in the Proper Folders |
|
|
47 | (1) |
|
|
|
48 | (1) |
|
Create a New Web Site Using Visual Studio 2005 |
|
|
48 | (1) |
|
Add a Web Page to the Web Site |
|
|
48 | (1) |
|
Program a Web Application |
|
|
48 | (1) |
|
Configure Settings for a Web Application |
|
|
48 | (1) |
|
Optimize and Troubleshoot a Web Application |
|
|
49 | (1) |
|
|
|
49 | (2) |
|
Adding and Configuring Server Controls |
|
|
51 | (44) |
|
|
|
52 | (1) |
|
Lesson 1: Using a Server Control |
|
|
53 | (29) |
|
Understanding the Life Cycle of the Web Page and Its Controls |
|
|
54 | (6) |
|
Making the Decision: HTML or Web Server Controls? |
|
|
60 | (1) |
|
|
|
60 | (7) |
|
|
|
67 | (1) |
|
Adding Web Server Controls to the Web Page |
|
|
68 | (1) |
|
Adding Web Server Controls Using Design View |
|
|
69 | (1) |
|
Adding Web Server Controls Using Source View |
|
|
69 | (1) |
|
Adding Web Server Controls Dynamically Via Code |
|
|
69 | (7) |
|
Lab: Exploring Web Page and Server Control Life Cycle Events |
|
|
76 | (3) |
|
|
|
79 | (1) |
|
|
|
80 | (2) |
|
Lesson 2: Exploring Common Web Server Controls |
|
|
82 | (9) |
|
|
|
82 | (1) |
|
|
|
83 | (1) |
|
|
|
84 | (1) |
|
|
|
84 | (1) |
|
|
|
85 | (1) |
|
Lab: Working With Web Server Controls |
|
|
86 | (3) |
|
|
|
89 | (1) |
|
|
|
89 | (2) |
|
|
|
91 | (1) |
|
|
|
91 | (1) |
|
|
|
91 | (1) |
|
|
|
92 | (1) |
|
Case Scenario 1: Determining the Type of Controls to Use |
|
|
92 | (1) |
|
Case Scenario 2: Selecting the Proper Events to Use |
|
|
92 | (1) |
|
|
|
92 | (1) |
|
Create a New Web Page Using Server Controls |
|
|
92 | (1) |
|
Create Event Handlers for Pages and Controls |
|
|
93 | (1) |
|
Program a Web Application |
|
|
93 | (1) |
|
|
|
93 | (2) |
|
Exploring Specialized Server Controls |
|
|
95 | (130) |
|
|
|
97 | (1) |
|
Lesson 1: Exploring Specialized Web Server Controls |
|
|
98 | (57) |
|
|
|
98 | (3) |
|
The Table, TableRow, and TableCell Controls |
|
|
101 | (4) |
|
|
|
105 | (3) |
|
|
|
108 | (2) |
|
|
|
110 | (7) |
|
|
|
117 | (8) |
|
|
|
125 | (4) |
|
|
|
129 | (2) |
|
The MultiView and View Controls |
|
|
131 | (4) |
|
|
|
135 | (6) |
|
|
|
141 | (5) |
|
Lab: Work with Specialized Web Controls |
|
|
146 | (7) |
|
|
|
153 | (1) |
|
|
|
153 | (2) |
|
Lesson 2: Working with Data-Bound Web Server Controls |
|
|
155 | (66) |
|
Using a Collection to Perform Data-Binding |
|
|
155 | (3) |
|
Introducing Data-Bound Controls |
|
|
158 | (2) |
|
|
|
160 | (1) |
|
Mapping Fields to Templates |
|
|
161 | (1) |
|
Using the DataBinder Class |
|
|
162 | (1) |
|
Exploring the ListControl |
|
|
163 | (2) |
|
|
|
165 | (2) |
|
|
|
167 | (3) |
|
The CheckBoxList and RadioButtonList Controls |
|
|
170 | (3) |
|
|
|
173 | (4) |
|
|
|
177 | (3) |
|
The CompositeDataBoundControl Control |
|
|
180 | (1) |
|
|
|
181 | (9) |
|
|
|
190 | (4) |
|
|
|
194 | (6) |
|
The HierarchicalDataBoundControl Control |
|
|
200 | (1) |
|
|
|
201 | (5) |
|
|
|
206 | (4) |
|
Lab: Use the GridView and DetailsView Controls |
|
|
210 | (9) |
|
|
|
219 | (1) |
|
|
|
220 | (1) |
|
|
|
221 | (1) |
|
|
|
221 | (1) |
|
|
|
221 | (1) |
|
|
|
222 | (1) |
|
Case Scenario 1: Determining How to Prompt for Data |
|
|
222 | (1) |
|
Case Scenario 2: Implementing a Calendar Solution |
|
|
222 | (1) |
|
Case Scenario 3: Implementing a Master/Detail Solution |
|
|
222 | (1) |
|
|
|
223 | (1) |
|
Create New Web Pages Using Each of the Server Controls |
|
|
223 | (1) |
|
Create a Master/Detail Solution Using the Data-Bound Server Controls |
|
|
223 | (1) |
|
Modify the Appearance of a Data-Bound Control Using Templates |
|
|
223 | (1) |
|
|
|
224 | (1) |
|
Using ADO.NET and XML with ASP.NET |
|
|
225 | (164) |
|
|
|
229 | (1) |
|
Lesson 1: Using the ADO.NET Disconnected Classes |
|
|
230 | (50) |
|
Getting Started with the DataTable Object |
|
|
230 | (20) |
|
|
|
250 | (25) |
|
Lab: Working with Disconnected Data |
|
|
275 | (3) |
|
|
|
278 | (1) |
|
|
|
278 | (2) |
|
Lesson 2: Using the ADO.NET Connected Classes |
|
|
280 | (66) |
|
Using Provider Classes to Move Data |
|
|
280 | (48) |
|
|
|
328 | (14) |
|
Lab: Working with Connected Data |
|
|
342 | (1) |
|
|
|
343 | (1) |
|
|
|
344 | (2) |
|
Lesson 3: Working with XML Data |
|
|
346 | (38) |
|
The XML Document Object Model |
|
|
346 | (31) |
|
|
|
377 | (4) |
|
Lab: Working with XML Data |
|
|
381 | (1) |
|
|
|
382 | (1) |
|
|
|
382 | (2) |
|
|
|
384 | (1) |
|
|
|
384 | (1) |
|
|
|
384 | (1) |
|
|
|
385 | (1) |
|
Case Scenario 1: Determining Ways to Update the Database |
|
|
385 | (1) |
|
Case Scenario 2: Storing a DataSet to a Binary File |
|
|
385 | (1) |
|
|
|
385 | (2) |
|
Create a New Web Page For Updating Database Data |
|
|
386 | (1) |
|
Create a New Web Page For Editing Disconnected Data |
|
|
386 | (1) |
|
Create a New Web Page For Editing Connected Data |
|
|
386 | (1) |
|
Create a New Web Page Working with XML Data |
|
|
387 | (1) |
|
Create a New Web Page for Reading, Modifying, and Writing XML Data |
|
|
387 | (1) |
|
|
|
387 | (2) |
|
Creating Custom Web Controls |
|
|
389 | (72) |
|
|
|
390 | (1) |
|
|
|
391 | (1) |
|
Lesson 1: Working with User Controls |
|
|
392 | (31) |
|
|
|
392 | (1) |
|
|
|
393 | (1) |
|
Adding a User Control to a Page |
|
|
394 | (1) |
|
Accessing Data from the User Control |
|
|
395 | (3) |
|
Positioning User Controls |
|
|
398 | (1) |
|
|
|
399 | (1) |
|
Dynamically Loading Controls |
|
|
400 | (2) |
|
Raising Events to the Page |
|
|
402 | (4) |
|
Creating a Templated User Control |
|
|
406 | (5) |
|
Using the Templated User Control |
|
|
411 | (2) |
|
Lab: Working With User Controls |
|
|
413 | (7) |
|
|
|
420 | (1) |
|
|
|
421 | (2) |
|
Lesson 2: Working with Custom Web Server Controls |
|
|
423 | (33) |
|
Employing Custom Web Server Controls |
|
|
423 | (1) |
|
Creating a Custom Web Server Control |
|
|
423 | (6) |
|
Adding a Custom Web Server Control to the Toolbox |
|
|
429 | (1) |
|
Individualizing a Custom Web Server Control |
|
|
430 | (1) |
|
Creating a Custom Designer for a Custom Control |
|
|
431 | (2) |
|
Creating a Composite Control |
|
|
433 | (6) |
|
Creating a Templated Control |
|
|
439 | (7) |
|
Using the Templated Control |
|
|
446 | (3) |
|
Lab: Working With Custom Web Server Controls |
|
|
449 | (5) |
|
|
|
454 | (1) |
|
|
|
454 | (2) |
|
|
|
456 | (1) |
|
|
|
456 | (1) |
|
|
|
456 | (1) |
|
|
|
457 | (1) |
|
Case Scenario 1: Sharing Controls Between Applications |
|
|
457 | (1) |
|
Case Scenario 2: Providing Layout Flexibility |
|
|
457 | (1) |
|
|
|
457 | (2) |
|
Create a New Custom User Control |
|
|
457 | (1) |
|
Create a New Custom Web Server Control |
|
|
458 | (1) |
|
Create a New Composite Web Server Control |
|
|
458 | (1) |
|
Create a New Templated Control |
|
|
458 | (1) |
|
|
|
459 | (2) |
|
Input Validation and Site Navigation |
|
|
461 | (36) |
|
|
|
462 | (2) |
|
Lesson 1: Performing Input Validation |
|
|
464 | (17) |
|
Understanding the Validation Framework |
|
|
464 | (2) |
|
Understanding the BaseValidator Class |
|
|
466 | (1) |
|
Understanding the RequiredFieldValidator Control |
|
|
467 | (1) |
|
Understanding the BaseCompareValidator Class |
|
|
467 | (1) |
|
Using the CompareValidator Control |
|
|
468 | (1) |
|
Using the RangeValidator Control |
|
|
468 | (1) |
|
Using the RegularExpressionValidator Control |
|
|
468 | (1) |
|
The CustomValidator Control |
|
|
469 | (4) |
|
Ensuring Server-Side Validation |
|
|
473 | (1) |
|
Determining When to Validate |
|
|
474 | (1) |
|
|
|
474 | (1) |
|
Lab: Working with Validation Controls |
|
|
475 | (3) |
|
|
|
478 | (1) |
|
|
|
479 | (2) |
|
Lesson 2: Performing Site Navigation |
|
|
481 | (12) |
|
Is Site Navigation Necessary? |
|
|
481 | (1) |
|
Choosing a Method to Navigate Pages |
|
|
481 | (1) |
|
Providing Client-Side Code or Markup to Request a New Web Page |
|
|
482 | (1) |
|
|
|
483 | (1) |
|
Accessing Strongly Typed Data |
|
|
484 | (1) |
|
Issuing Client-Side Browser Redirect |
|
|
485 | (1) |
|
Issuing Server-Side Transfer |
|
|
486 | (1) |
|
Using the Site Map Web Server Control |
|
|
487 | (1) |
|
|
|
488 | (1) |
|
Lab: Working With Site Navigation |
|
|
489 | (2) |
|
|
|
491 | (1) |
|
|
|
492 | (1) |
|
|
|
493 | (1) |
|
|
|
493 | (1) |
|
|
|
493 | (1) |
|
|
|
493 | (1) |
|
Case Scenario 1: Determining the Proper User Name Validators to Implement |
|
|
494 | (1) |
|
Case Scenario 2: Determining the Proper Password Validators to Implement |
|
|
494 | (1) |
|
Case Scenario 3: Implementing a Site Map |
|
|
494 | (1) |
|
|
|
494 | (1) |
|
Create a Web Site and Program Redirection |
|
|
494 | (1) |
|
Create a Data Collection Page with Validation |
|
|
495 | (1) |
|
Implement the HyperLink Web Server Control |
|
|
495 | (1) |
|
|
|
495 | (2) |
|
|
|
497 | (40) |
|
|
|
498 | (1) |
|
Lesson 1: Using Client-Side State Management |
|
|
499 | (20) |
|
Choosing Client-Side or Server-Side State Management |
|
|
500 | (1) |
|
|
|
501 | (3) |
|
|
|
504 | (1) |
|
|
|
505 | (1) |
|
|
|
505 | (4) |
|
|
|
509 | (3) |
|
Lab: Store State Management Data on the Client |
|
|
512 | (4) |
|
|
|
516 | (1) |
|
|
|
517 | (2) |
|
Lesson 2: Using Server-Side State Management |
|
|
519 | (13) |
|
|
|
519 | (3) |
|
|
|
522 | (5) |
|
|
|
527 | (1) |
|
Lab: Store State Management Data on the Server |
|
|
527 | (3) |
|
|
|
530 | (1) |
|
|
|
530 | (2) |
|
|
|
532 | (1) |
|
|
|
532 | (1) |
|
|
|
532 | (1) |
|
|
|
533 | (1) |
|
Case Scenario 1: Remembering User Credentials |
|
|
533 | (1) |
|
Case Scenario 2: Analyzing Information for Individual Users and for All Users |
|
|
534 | (1) |
|
|
|
534 | (2) |
|
Manage State by Using Client-Based State Management Options |
|
|
534 | (1) |
|
Manage State by Using Server-Based State Management Options |
|
|
535 | (1) |
|
Maintain State by Using Database Technology |
|
|
535 | (1) |
|
Respond to Application and Session Events |
|
|
535 | (1) |
|
|
|
536 | (1) |
|
Programming the Web Application |
|
|
537 | (44) |
|
|
|
538 | (1) |
|
Lesson 1: Using Web Site Programmability |
|
|
539 | (19) |
|
Page and Application Exception Handling |
|
|
539 | (2) |
|
Programming the Web.Config File Settings |
|
|
541 | (6) |
|
Asynchronous Web Page Programming |
|
|
547 | (2) |
|
Dynamically Generate Images Using an ASP.NET Handler |
|
|
549 | (4) |
|
Lab: Creating a Custom Handler |
|
|
553 | (2) |
|
|
|
555 | (1) |
|
|
|
556 | (2) |
|
Lesson 2: Using Request Information |
|
|
558 | (17) |
|
Determining the Browser Type |
|
|
558 | (4) |
|
Page and Application Context Overview |
|
|
562 | (7) |
|
Accessing Web Page Headers |
|
|
569 | (1) |
|
Lab: Examine Page and Application Context |
|
|
570 | (3) |
|
|
|
573 | (1) |
|
|
|
573 | (2) |
|
|
|
575 | (1) |
|
|
|
575 | (1) |
|
|
|
576 | (1) |
|
|
|
576 | (1) |
|
Case Scenario 1: Dynamically Generating Charts |
|
|
576 | (1) |
|
Case Scenario 2: Dynamically Adjusting Pages Based on Browser Capabilities |
|
|
577 | (1) |
|
|
|
577 | (2) |
|
Program a Web Application |
|
|
577 | (1) |
|
Add and Configure Web Server Controls |
|
|
578 | (1) |
|
Write an ASP.NET Handler to Generate Images Dynamically for Display on a Web Page |
|
|
579 | (1) |
|
|
|
579 | (2) |
|
Customizing and Personalizing a Web Application |
|
|
581 | (68) |
|
|
|
582 | (2) |
|
Lesson 1: Using Master Pages |
|
|
584 | (18) |
|
Overview of Master and Content Pages |
|
|
585 | (3) |
|
The Process of Creating Master and Content Pages |
|
|
588 | (1) |
|
Techniques for Attaching Content Pages to a Master Page |
|
|
589 | (1) |
|
Referencing Master Page Properties and Controls from Content Pages |
|
|
590 | (2) |
|
Handling Events When Working with Master Pages |
|
|
592 | (1) |
|
Creating a Nested Master Page |
|
|
593 | (1) |
|
Dynamically Changing Master Pages |
|
|
594 | (1) |
|
Lab: Using Master and Child Pages |
|
|
595 | (4) |
|
|
|
599 | (1) |
|
|
|
600 | (2) |
|
Lesson 2: Using Themes and User Profiles |
|
|
602 | (19) |
|
|
|
602 | (7) |
|
|
|
609 | (4) |
|
Dynamically Adding Controls |
|
|
613 | (1) |
|
Lab: Applying Themes and User Profiles |
|
|
614 | (5) |
|
|
|
619 | (1) |
|
|
|
619 | (2) |
|
Lesson 3: Using Web Parts |
|
|
621 | (21) |
|
|
|
621 | (2) |
|
Adding Web Parts to a Page |
|
|
623 | (1) |
|
Enabling Users to Arrange and Edit Web Parts |
|
|
623 | (2) |
|
|
|
625 | (4) |
|
|
|
629 | (2) |
|
|
|
631 | (9) |
|
|
|
640 | (1) |
|
|
|
640 | (2) |
|
|
|
642 | (1) |
|
|
|
642 | (1) |
|
|
|
642 | (1) |
|
|
|
643 | (2) |
|
Case Scenario 1: Meet Customization Requirements for an Internal Insurance Application |
|
|
643 | (1) |
|
Case Scenario 2: Provide Consistent Formatting for an External Web Application |
|
|
644 | (1) |
|
|
|
645 | (2) |
|
Implement a Consistent Page Design by Using Master Pages |
|
|
645 | (1) |
|
Customize a Web Page by Using Themes and User Profiles |
|
|
646 | (1) |
|
Implement Web Parts in a Web Application |
|
|
646 | (1) |
|
|
|
647 | (2) |
|
Globalization and Accessibility |
|
|
649 | (32) |
|
|
|
649 | (2) |
|
Lesson 1: Configuring Globalization and Localization |
|
|
651 | (14) |
|
|
|
651 | (7) |
|
HTML Layout Best Practices |
|
|
658 | (1) |
|
|
|
659 | (2) |
|
Lab: Creating a Web Page That Supports Multiple Cultures |
|
|
661 | (2) |
|
|
|
663 | (1) |
|
|
|
664 | (1) |
|
Lesson 2: Configuring Accessibility |
|
|
665 | (11) |
|
Public Accessibility Guidelines |
|
|
665 | (1) |
|
How ASP.NET Controls Support Accessibility |
|
|
666 | (1) |
|
Improving Visual Accessibility |
|
|
667 | (2) |
|
Improving the Accessibility of Forms Requiring User Input |
|
|
669 | (2) |
|
|
|
671 | (1) |
|
Lab: Improving the Accessibility of a Web Page |
|
|
672 | (2) |
|
|
|
674 | (1) |
|
|
|
674 | (2) |
|
|
|
676 | (1) |
|
|
|
676 | (1) |
|
|
|
677 | (1) |
|
|
|
677 | (1) |
|
Case Scenario 1: Upgrade an Application for Multiple Languages |
|
|
677 | (1) |
|
Case Scenario 2: Making a Web Application Accessible |
|
|
678 | (1) |
|
|
|
678 | (1) |
|
Implement Globalization and Accessibility |
|
|
678 | (1) |
|
|
|
679 | (2) |
|
Implementing Authentication and Authorization |
|
|
681 | (46) |
|
|
|
683 | (1) |
|
Lesson 1: Using ASP.NET Membership |
|
|
684 | (15) |
|
|
|
684 | (2) |
|
|
|
686 | (1) |
|
|
|
687 | (1) |
|
Configuring Web Applications to Use ASP.NET Membership |
|
|
688 | (6) |
|
Lab: Configuring Authentication in ASP.NET Applications |
|
|
694 | (2) |
|
|
|
696 | (1) |
|
|
|
697 | (2) |
|
Lesson 2: Using Windows, Forms, Passport, and Anonymous Authentication |
|
|
699 | (21) |
|
Configuring Web Applications to Require Windows Authentication |
|
|
699 | (3) |
|
Creating Custom ASP.NET Forms to Authenticate Web Users |
|
|
702 | (8) |
|
Configuring Web Applications to Require Passport Authentication |
|
|
710 | (1) |
|
Configuring Web Applications for Only Anonymous Access |
|
|
711 | (1) |
|
Configuring Impersonation by Using .config Files |
|
|
711 | (1) |
|
Restricting Access to ASP.NET Web Applications, Files, and Folders |
|
|
712 | (3) |
|
Lab: Controlling Authorization in ASP.NET Applications |
|
|
715 | (2) |
|
|
|
717 | (1) |
|
|
|
717 | (3) |
|
|
|
720 | (1) |
|
|
|
720 | (1) |
|
|
|
721 | (1) |
|
|
|
721 | (3) |
|
Case Scenario 1: Configuring Web Application Authorization |
|
|
721 | (2) |
|
Case Scenario 2: Configuring Web Application Authentication |
|
|
723 | (1) |
|
|
|
724 | (2) |
|
Establish a User's Identity by Using Forms Authentication |
|
|
724 | (1) |
|
Use Authorization to Establish the Rights of an Authenticated User |
|
|
725 | (1) |
|
Implement Microsoft Windows Authentication and Impersonation |
|
|
725 | (1) |
|
Use Login Controls to Control Access to a Web Application |
|
|
726 | (1) |
|
|
|
726 | (1) |
|
Creating ASP.NET Mobile Web Applications |
|
|
727 | (34) |
|
|
|
727 | (2) |
|
Lesson 1: Building Mobile Applications |
|
|
729 | (28) |
|
Introducing the Mobile Web Application |
|
|
729 | (1) |
|
Creating a Mobile Web Application |
|
|
729 | (1) |
|
Viewing and Testing Mobile Web Applications |
|
|
730 | (2) |
|
Understanding Mobile Web Forms |
|
|
732 | (8) |
|
|
|
740 | (6) |
|
Applying Best Practices to Mobile Applications |
|
|
746 | (1) |
|
Lab: Working with Mobile Web Applications |
|
|
747 | (7) |
|
|
|
754 | (1) |
|
|
|
755 | (2) |
|
|
|
757 | (1) |
|
|
|
757 | (1) |
|
|
|
757 | (1) |
|
|
|
757 | (1) |
|
Case Scenario 1: Determining the Mobile Control to Use |
|
|
757 | (1) |
|
Case Scenario 2: Determining How Many Web Pages to Create |
|
|
758 | (1) |
|
|
|
758 | (2) |
|
Create a Mobile Web Application Project |
|
|
758 | (1) |
|
Exploring Adaptive Rendering |
|
|
758 | (1) |
|
Implement Device-Specific Rendering |
|
|
759 | (1) |
|
Create a Data-Collection Page with Validation |
|
|
759 | (1) |
|
|
|
760 | (1) |
|
Monitoring, Deploying, and Caching Applications |
|
|
761 | (66) |
|
|
|
762 | (1) |
|
Lesson 1: Deploying Web Applications |
|
|
763 | (25) |
|
|
|
763 | (15) |
|
Deploying Web Applications Using the Copy Web Tool |
|
|
778 | (3) |
|
Precompiling Web Applications |
|
|
781 | (1) |
|
Lab: Deploying Web Applications |
|
|
782 | (3) |
|
|
|
785 | (1) |
|
|
|
786 | (2) |
|
Lesson 2: Building Web Applications for Monitoring |
|
|
788 | (17) |
|
Customizing Event Analysis |
|
|
788 | (7) |
|
Providing Custom Performance Counters |
|
|
795 | (4) |
|
Lab: Monitoring Web Applications |
|
|
799 | (4) |
|
|
|
803 | (1) |
|
|
|
803 | (2) |
|
Lesson 3: Using Caching to Improve Performance |
|
|
805 | (16) |
|
|
|
806 | (3) |
|
|
|
809 | (8) |
|
Lab: Using Page Output Caching to Improve Performance |
|
|
817 | (1) |
|
|
|
818 | (1) |
|
|
|
819 | (2) |
|
|
|
821 | (1) |
|
|
|
821 | (1) |
|
|
|
822 | (1) |
|
|
|
822 | (2) |
|
Case Scenario 1: Deploying a Web Application |
|
|
822 | (1) |
|
Case Scenario 2: Improving the Performance of a Public Web Site |
|
|
823 | (1) |
|
|
|
824 | (2) |
|
Use a Web Setup Project to Deploy a Web Application to a Target Server |
|
|
824 | (1) |
|
Copy a Web Application to a Target Server by Using the Copy Web Tool |
|
|
824 | (1) |
|
Precompile a Web Application by Using the Publish Web Utility |
|
|
825 | (1) |
|
Optimize and Troubleshoot a Web Application |
|
|
825 | (1) |
|
|
|
826 | (1) |
| Answers |
|
827 | (40) |
| Glossary |
|
867 | (6) |
| Index |
|
873 | |