Customizing the User Experience within ASP
The earliest Web sites were collections of independent, mostly static HTML pages joined together only by links.
These sites offered little in the way of interactivity and did not profile users to customize their experience as is now commonplace.
ASP has many features that you can use to add customization to a user's visit and to your Web site, and
we will cover them in this module.
By the end of this module, you will be able to:
Explain why the lack of "state" on the Web causes difficulty in retaining user data
Explain how the Session object and session variables maintain user information throughout a site visit
Describe and create a Global.asa file with common user start and end procedures
Display a banner image or text that rotates through a series with the Advertisement Rotator component
Explain how the Server object can URL encode data that includes a space or other character not allowed inside a URL
The next lesson describes problems caused by lack of "state" on the Web and some solutions.
ASP.NET as a Service Framework
In the years since the first release of the .NET Framework, Microsoft has provided a variety of approaches for building service-oriented applications.
Starting back in 2002 with the original release of .NET, a developer could fairly easily create an ASP.NET ASMX-based XML web service that allowed other .NET and non-.NET clients to call it.
Those web services implemented various versions of SOAP, but they were available for use only over HTTP.
In addition to support for web services, the 1.0 release of .NET provided support for Remoting.
This allowed developers to write services that were not necessarily tied to the HTTP protocol. Similar to ASMX-based web services,
.NET Remoting essentially provides object activation and session context for client-initiated method calls.
The caller uses a proxy object to invoke methods, and the .NET runtime handles the serialization and marshaling of data between the clientís proxy object and the serverís activated service object.
Towards the end of 2006, Microsoft released .NET 3.0, which included the Windows Communication Foundation (WCF).
WCF not only replaced ASMX web services and .NET Remoting, but also took a giant step forward in the way of flexibility, configurability, extensibility,
and support for more recent security and other SOAP standards. For example, with WCF, a developer can write a non-HTTP service that supports authentication with SAML tokens and host it in a
custom-built Windows service. These and other capabilities greatly broaden the scenarios under which .NET can be
utilized to build a service-oriented application.