ASP.NET is a platform that excels in the realm of Web application development. It also can be used in stand-alone applications. ASP.NET produces HTML content some static and unchanging, some dynamic and changeable.
The static HTML content that's output using ASP.NET is similar to what you can create with Notepad or FrontPage. When you use an authoring tool such as FrontPage, you typically use the WYSIWYG editor and save the file somewhere usually to a Web server. The HTML content is then served up when a client machine makes a request to the Web server.
Many times, though, the content needs to adapt itself to the situation. A particular user might need additional menu choices in the Web application. Or if your business offers specials each Tuesday, you might need special images to appear next to those items in you product catalog each Tuesday. As a technology for dynamically creating HTML, ASP.NET works in instances such as these.
Many of you have developed ASP applications in which the files all have .asp extensions. ASP.NET application files have an .aspx extension to differentiate them from ASP files. Because their extensions are different, both classic ASP and ASP.NET can function side-by-side in the same Web site.
ASP.NET files have a major performance advantage over ASP files. The first time they are requested, they are compiled into native code, which makes them execute much faster than the interpreted ASP files.
In terms of extra effort required, this multiple-language support and runtime compilation to native code doesn't come at any price to developers. To save an ASP.NET file, all you have to do is save it to disk no compile button and no other steps.
ASP.NET has a new control-based, event-driven execution model. You can hook a Page_Load() method, an event that a server-side control fires off such as an OnItemCommand() method, or any other event that is available. The naming of Page_Load() in C# is the default behavior. The event handler could be named iRool and not affect whether the event was called. By comparison, in VB.NET, similar methods end with handles Page.Load.
In all, the new model that ASP.NET follows offers these benefits: It requires that you write less code, it encapsulates functionality into easy-to-use classes, and it reduces the amount of spaghetti code you'll be inclined to write.
Many of the applications we'll write in this book use Visual Studio .Net as the development tool, with ASP.NET as the deployment and runtime environment. We chose this combination because of the heavy emphasis that Microsoft is placing on distributed applications, and the rising need for you to develop enterprise and distributed applications.