ASP.NET provides an abstraction layer on top of HTTP with which developers build web sites and web-based front ends for enterprise systems. Thanks to ASP.NET, developers can work with high-level entities such as classes and components and, more importantly, within the object-oriented paradigm. Development tools assist developers during the work, and try to make the interaction with the ASP.NET framework as seamless and productive as possible. Development tools are ultimately responsible for the application, or front end, being created and deployed to users. They offer their own programming model and force developers to play by their rules.
The key development tool for building ASP.NET 2.0 applications and front ends is Visual Studio 2005the successor to Visual Studio .NET 2003. It has a lot of new features and goodies expressly designed for web developers to overcome some of the limitations that surfaced from using Visual Studio .NET 2003.
Visual Studio .NET is a container environment that integrates the functionality of multiple visual designers. You have a designer for building Windows Forms applications, one for building ASP.NET sites, one for building web services, and so on. All items required by your work, such as references, connectors to data sources, folders, and files, are grouped at two levels: solutions and projects. A solution container contains multiple projects, whereas a project container typically stores multiple items. Using these containers, you manage settings for your solution as a whole or for individual projects. Each item in the project displays its own set of properties through a secondary windowthe Properties window.
Many things can be said about Visual Studio 2005, and countless features can be held up as an example of its power. The limited space of this column just doesnt allow for enumerating improvements, fixups, and brand new functions.
An important aspect to emphasize, though, is that the list of key enhancements you find in Visual Studio 2005 matches up exactly to the shortcomings recognized in the previous edition. Heres a brief list of my favorites features.
For one thing, IIS is no longer a strict requirement for Visual Studio .NET to work. Visual Studio 2005 ships, in fact, with a local web server that makes IIS optional, at least for quick testing and debugging purposes. Visual Studio 2005 supports multiple ways to open web sites. In addition to using FPSE, you can access your source files using FTP or a direct file-system path. You can also directly access the local installation of IIS, browse the existing hierarchy of virtual directories, access existing virtual roots, or create new ones.
Solution files (*.sln) are supported but no longer necessary for creating and managing a web project. The root web directory defines a web project; you just add files to the directory and they are in the project already.
Visual Studio 2005 does not compile everything in the site into a single assembly, as Visual Studio .NET 2003 does. Instead, it builds on the new ASP.NET compilation model and dynamically recognizes file types based on the folder they belong to. In this way, not only are changes to .aspx files immediately caught, but so are those made to constituent .cs or .vb files and a variety of accessory resource files like themes, WSDL, and XSD.
Last but not least, Visual Studio 2005 supports standalone file editing and doesnt require a project to edit single files on disk. So if you double-click an .aspx file in Windows Explorer, Visual Studio 2005 starts up and lets you edit the source code. However, unlike with the previous version, IntelliSense and related syntax-coloring work effectively and the page can be viewed live in the embedded browser through the local web server.
I deliberately avoided speechifying about wizards and other similar magic tools that apparently make the noble art of code writing look like an old-fashioned and boring chore. Wizards and similar tools are great if you know what they do and how they do it. Although much emphasized, the changes I listed here will likely simplify the programmers life more than a totally automated and automatic data binder.
Dino Esposito is Wintellect's ADO.NET and XML expert, and a trainer and consultant
based in Rome, Italy. Dino is a contributing editor to Windows Developer
Network and MSDN Magazine, and the author of several books for Microsoft
Press including Building Web Solutions with ASP.NET and ADO.NET
and Applied XML Programming for .NET. Contact Dino at [email protected].