In this chapter, we've attempted to provide
a complete overview of what is new and what has changed in ASP+, compared to
earlier versions of ASP. ASP+ is the new generation of Microsoft's successful
Active Server Pages technology, and represents a real advance in ease of use
ASP+ is designed to remove many of the
existing limitations of ASP, such as the dependence on script languages, poor
support for object-oriented design and programming techniques, and the need to
continuously re-invent techniques for each page or application you build.
Instead, ASP+ combines the ability to build more complex and powerful
applications, with a reduced requirement for the developer to write repetitive
code. For example, the process of maintaining values in HTML form controls and
posting these values back to the server ('round tripping') requires quite a lot
of code to maintain the state within the page. ASP+ does all this work for you
At the same time, the world out there is
changing. The proportion of users that will access your site through an
'Internet device' such as a mobile cellular phone, personal digital assistant
(PDA), TV set-top box, games console, or other device will soon be greater that
the number using a PC and a traditional Web browser. ASP+ provides solutions
that help to reduce the work required for coping with these disparate types of
The rapidly changing nature of distributed
applications requires faster development, more componentization and
re-usability, and wider general platform support. New standards such as the
Simple Object Access Protocol (SOAP) and new commercial requirements such as
business-to-business (B2B) data interchange require new techniques to be used
to generate output and communicate with other systems. To meet all these
requirements, ASP has been totally revamped from the ground up into a whole new
programming environment that includes:
Pages that use the new
server-side controls to automate state management in the page, and reduce the code
you have to write.
HTML Server-side Controls that can be used to generate the HTML elements in the page output,
and allow code to be used to set the properties (i.e. attributes) of these
controls at runtime. They also allow events raised by the elements to be
detected and appropriate code executed on the server in response to these
Rich Controls that run
on the server can be used to create more complex HTML elements and objects in
the page output. ASP+ includes a calendar control and a range of grid, table
and list controls. These controls can also take advantage of server-side data
binding to populate them with values.
Web Services that
allow developers to create pages that are generally not rendered as visible
output, but instead provide services to the client. For example, they can
include functions that return specific values in response to a request.
and Deployment, with the use of human-readable
XML-format configuration files. Components no longer need to be registered on
the server (using regsvr32), and
applications can be deployed using file copy commands, the FrontPage server
extensions, or FTP.
Extended Application and
Session State Management that provides a
persistent and more scalable environment for storing values relevant to
specific clients and applications.
Improved Error Handling,
Debugging, and Tracing features. Each page can
have its own 'error page', and can also display values that are used in the
page code as it executes, providing a 'trace' facility.
New Security Management Features, which allow many different kinds of login and user authentication
to be used. Instead of the default browser login prompt, custom login pages can
be used with Windows 2000 and NTLM authentication. It is also easier to manage users
depending on the role or group they belong to.
Custom Server-side Caching allows developers to store all kinds of values and objects locally
on the server for use in ASP+ pages. The runtime can also cache the output from ASP+ pages. This can provide
a huge performance boost in situations where a dynamically created page is the
same for many visitors, such as a product catalog.
A Range of Useful Components are shipped with ASP+. These class libraries can help to make
writing Web applications easier. Examples include: the 'SendMail' component,
encryption/decryption components, components for defining custom performance
counters, components for reading and writing to the NT event log, components
for working with MSMQ,
network access components (replacements for 'WinInet'), data access components,
In the remainder of this book, we'll
examine all thee topics in more detail, and show you how you can use ASP+ to
build powerful and interactive Web-based distributed applications more quickly
and efficiently than ever before.