This is preliminary documentation and subject to change.
To comment on this topic, please send us email at ngwssdk@microsoft.com. Thanks!
Introduction to ASP+
ASP+ is more than the next version of Active Server Pages (ASP); it is a unified Web development platform that provides the services necessary for developers to build enterprise-class Web applications. While ASP+ provides backward syntax-compatibility with ASP, it also provides a new programming model and infrastructure that enables a powerful new class of applications. It is also possible to augment ASP applications by incrementally adding ASP+ functionality to existing applications.
ASP+ is a compiled NGWS-based environment; developers can author applications in any NGWS compatible language, including Microsoft® Visual Basic®, Microsoft® Managed Extensions for C++, Microsoft® C# and JScript. Additionally, the entire NGWS runtime platform is available to any ASP+ application. Developers can easily access the benefits of these technologies, which include a managed runtime environment, type safety, inheritance, and so on.
ASP+ has been designed to work seamlessly with WYSIWYG HTML editors and other programming tools, including Microsoft® Visual Studio® version 7.0. Not only does this make Web development easier, but it also provides all the benefits that these tools have to offer, including a GUI that developers can use to drop server controls onto a Web page, as well as fully integrated debugging support.
Developers can choose from three programming models when creating an ASP+ application, or combine these in any way they see fit.
- Web Forms allows developers to build powerful powerful forms-based web pages that take advantage of server controls for common UI elements or tasks. Server controls allow developers to rapidly build up a Web Form out of reusable built-in or custom components, simplifying the code of a page. For more information, see ASP+ Web Forms.
- A Web service is a way to access server functionality remotely. Using services, businesses can expose programmatic interfaces to their data or business logic, which in turn can be obtained and manipulated by client and server applications. Web services enable the exchange of data in client-server or server-server scenarios, using standards like HTTP and XML messaging to move data across firewalls. Web services are not tied to a particular component technology or object-calling convention. As a result, programs written in any language, using any component model, and running on any operating system can access Web services. For more information, see Using ASP+ Web Services.
- The Personal Tier offers developers the option of creating Web applications that run in the browser process on the client, meaning that you do not need a Web server to run ASP+ applications. Developers can create entire applications that run on the browser, or only a select number of Web pages, such as a downloadable catalog page. Personal Tier uses the same programming model as ASP+. For more information, see Browser-hosted ASP+ Applications.
Each of these options can take full advantage of all ASP+ features, as well as the power of the NGWS framework and runtime.
- ASP+ not only takes advantage of performance enhancements found in the NGWS framework and runtime, it has also been designed to offer significant performance improvements over ASP and other Web development platforms. All ASP+ code is compiled rather than interpreted, which allows early binding, strong typing, and just-in-time (JIT) compiling to native code, to name only a few of its benefits. ASP+ is also easily factorable, meaning that developers can remove modules (a session module, for instance) that are not relevant to the application being developed. ASP+ also provides extensive caching services, both built-in and caching APIs. ASP+ also ships with Performance Counters that developers and system administrators can monitor to test new applications and gather metrics on existing ones. For more information, see ASP+ Caching Features and Optimizing ASP+ Applications.
- With ASP+, installing, updating or replacing applications is as easy as copying files to the appropriate application directories. There is no need for assembly registration or starting and stopping your Web server. For more information, see Deploying ASP+ Applications.
- ASP+ configuration settings are stored in XML-based files, which are human readable and writable. Each of your applications can have a distinct configuration file and you can extend the configuration scheme to suit your requirements. For more information, see ASP+ Configuration Concepts.
- ASP+ provides easy-to-use Application and Session state facilities that are familiar to ASP developers and are readily compatible with all other NGWS APIs. For more information, see ASP+ State Management.
- The NGWS framework and ASP+ provide default authorization and authentication schemes for Web applications. You can easily remove, add to, or replace these schemes depending upon the needs of your application. For more information, see ASP+ Web Application Security.
- Intended as a logical replacement for the ISAPI Extension and Filter APIs exposed on versions of the Microsoft® Internet Information Services (IIS) Web Server, the HTTP Runtime provides a low-level HTTP request processing API for NGWS classes. Developers can program directly against this API for ultimate flexibility, or utilize higher-level Web programming abstractions built on top of it—like the Web Forms Page Framework—when building Web applications. For more information, see HTTP Runtime Support.
- Accessing databases from ASP+ applications is an often-used technique for displaying data to Web site visitors. ASP+ makes it easier than ever to access databases for this purpose - and provides for managing the data in the database. For more information, see Accessing Data with ASP+.
- ASP+ provides a simple framework that enables Web developers to write logic that runs at the application level. Developers can write this code in either the global.asax text file or in a compiled class deployed as an assembly. This logic can include application-level events, but developers can easily extend this framework to suit the needs of their Web application. ASP application code, written in the global.asa file, is completely supported in ASP+. Web developers simply rename global.asa to global.asax when upgrading from ASP. For more information, see Defining Application-level Logic.
- ASP+ and NGWS ship with the NGWS SDK Debugger, which supports local debugging. Microsoft will also ship a second debugger for ASP+ applications with the Visual Studio 7.0 release. The Visual Studio Debugger will support debugging of ASP+ code on a remote computer, a feature that allows auto-attachment to the ASP+ runtime, and the ability to edit source files within the debugger source window. ASP+ also provides profiling and tracing capabilities, a built-in system for collecting runtime information about a series of application requests, as well as a set of APIs that developers can use to output custom performance information. For more information, see Debugging ASP+ Applications.
- ASP+ offers complete syntax and processing compatibility with ASP applications. Developers simply need to change file extensions from .asp to .aspx to migrate their files to the ASP+ framework. They can also easily add ASP+ functionality to their applications with ease, sometimes by simply adding just a few lines of code to their ASP files. For more information, see Migrating ASP Applications to ASP+.
See Also
Creating ASP+ Web Applications