While there are plenty of familiar features in ASP.NET, some significant changes have been made to the ASP.NET architecture, including many improvements and new features. The following section will take a high-level look at what’s new in ASP.NET.
It’s important to note that many things in ASP.NET will be familiar to Web developers who’ve used classic ASP. The much-used Request and Response objects are still there, as are the Application, Session, and Server objects, albeit with some new properties and methods. You can still use either <script runat=“server”> blocks or the <% %> ASP script delimiters to denote server- side script. In fact, for the most part you can write an ASP.NET page exactly the same way you would write a classic ASP page. Once you get used to the new programming model of ASP.NET, though, you’ll never go back to coding your ASP applications the way you do today.
Also, you don’t need to migrate all of your existing ASP applications at once. ASP.NET is designed to run side by side with classic ASP. So while you’re working on your first new ASP.NET application, your current ASP applications can still be running right alongside.
There’s a lot of new stuff in ASP.NET, and it will take time to learn all of it. But once you’ve learned it, your productivity will be far greater than it was with classic ASP. Let’s look at a list of some of the new features of ASP.NET.
Web Forms This is the new programming model of ASP.NET. Web Forms combines the best of ASP with the ease of development and productivity of Visual Basic. You can drag controls onto a page and then write code to provide interactivity, call business objects, and more. You’ll learn about Web Forms in Chapter 7.
Server controls A major component of the Web Forms programming model, the ASP.NET server controls map approximately to HTML elements (plus some additional controls you’ll learn about later) and provide powerful server-side programmability. Server controls are run on the server and can output HTML that’s tailored for uplevel browsers, such as Internet Explorer 5.x or later, or for any HTML 3.2–compliant browser. Chapter 8 and Chapter 10 will cover server controls in depth.
Web Services This is a key part of ASP.NET that allows developers to make programmatic services available to other developers over the Internet (or a local intranet). Web Services are based on the emerging SOAP standard, so they will allow relatively painless interoperation across diverse platforms. You’ll learn more about Web Services in Chapter 11.
Caching ASP.NET includes a powerful new caching engine that will allow developers to improve the performance of their applications by reducing the Web server and database server processing loads. You’ll learn more about caching in Chapter 12.
Configuration improvements ASP.NET uses a new method of storing configuration information for Web applications. Instead of having IIS store this information in a hard-to-access database, it’s stored in XML-based human- and machine-readable configuration files, which also make deployment easier. You’ll look at how these configuration files work in Chapter 5.
State management improvementsIf you’ve had to build an ASP application to run on a Web farm, you know all too well that there were major limitations to state management in classic ASP. ASP.NET overcomes these limitations, providing support for distributing session state across Web servers, persisting state information in a Microsoft SQL Server database, and providing state management without the use of cookies. You’ll learn how to take advantage of these features in Chapter 4.
SecurityThis is an extremely important function in today’s Web applications. The security model in ASP.NET has been substantially improved, including new and improved authentication methods, code access security, and role-based authorization. You’ll look at the ASP.NET security model and how to implement security in your ASP.NET applications in Chapter 6. New in version 1.1 of ASP.NET is a feature called Request Validation. This feature, which checks form input for scripts or HTML and throws an exception if such data is found, is designed to help developer prevent cross-site scripting attacks.
Mobile Web Application Support Version 1.1 of ASP.NET adds built-in support for the ASP.NET Mobile controls (formerly the Microsoft Mobile Internet Toolkit), which offer support for building Web applications for mobile devices such as Personal Digital Assistants (PDAs) and cell phones. Enhancing this support is a new designer in the Visual Studio .NET IDE for mobile ASP.NET applications.
We’ve only scratched the surface in describing some of the new offerings of the .NET platform and the substantial advantages offered by ASP.NET. In subsequent chapters, you’ll get detailed information on using ASP.NET to create faster, more robust, and more functional Web applications. In the next chapter, you’ll learn about the various development tools that you can use to create your Web applications, from simple text editors to powerful IDEs such as Visual Studio .NET.