The ASP.NET Web Matrix Project Reloaded!
By Scott Mitchell
Introduction
Exactly one year ago I wrote an article titled, The ASP.NET Web
Matrix Project. In this previous article I examined the ASP.NET Team's latest free offering,
The Web Matrix Project, which is a free ASP.NET
IDE. One year after their original Web Matrix Project release, the ASP.NET Team has released a new
version of the Web Matrix: The Web Matrix Reloaded! This latest version of the Web Matrix Project
offers a number of bug fixes, enhancements, and additional features. This article examines the
improvements of the Web Matrix Reloaded, as well as some commentary and ideas for improvements.
A Quick Recap of the Web Matrix Project and Its Goals
The Web Matrix Project is designed to be a lightweight editor aimed specifically at ASP.NET Web page
development. The first version of the Web Matrix Project was a mere 1.2 MB download - small enough to
fit on a floppy! With its price tag of $0.00, the Web Matrix Project serves as a great editor for
those new to ASP.NET development. Furthermore, the Web Matrix Project includes a separate Web server
that can be used, thereby allowing local ASP.NET development and testing without requiring IIS (perfect
for those using Windows XP Home edition, which does not contain the IIS Web server).
The Web Matrix Project contains a GUI interface quite similar to Visual Studio .NET's. One can drag
and drop ASP.NET Web controls onto a designer, thereby creating ASP.NET Web pages in record time.
The Web Matrix also contains features specifically aimed toward ASP.NET developers. For example,
in the Workspace pane, an FTP Connection can be established, so that one can edit remote files on a
Web server with FTP support. Also, the Web Matrix Project contains Code Wizards (renamed from Code
Builders from the first version).
While the Web Matrix Project contains a number of features found in Visual Studio .NET (and some
that are not), the Web Matrix Project is hardly a replacement. First, the Web Matrix Project does
not have any notion of Projects, as in Visual Studio .NET; rather, it only allows for editing of
single files. The Web Matrix Project does not contain inherent support for code-behind classes, as
does Visual Studio .NET. And, most damning, the Web Matrix Project does not provide IntelliSense.
Despite these shortcomings compared to Visual Studio .NET, the Web Matrix Project has its time and
place. Personally, I use the Web Matrix Project often to whip up quick prototypes or simple demos.
For creating a simple ASP.NET Web page, I find it much easier to use the Web Matrix Project than
to create a new Project/Web Application in Visual Studio .NET. Additionally, the Web Matrix Project
is much more memory-friendly, consuming less resources than VS.NET. If nothing else, the Web Matrix
Project is worth checking out as it is a small download and is free.
Examining the Web Matrix Reloaded
The latest version of the Web Matrix has been dubbed the Web Matrix Reloaded, and is Version 0.6. (The
previous release was Version 0.5.) The Web Matrix Reloaded can still be downloaded from the same
URL as the Web Matrix Project - http://asp.net/WebMatrix/ -
but has increased in download size slightly, to 1.3 MB. This slight increase in size, though,
is understandable, as a number of enhancements and new features have been added. The Web Matrix
Reloaded works with both ASP.NET version 1.0 and version 1.1.
In addition to fixing a number of bugs, the following enhancements and additions have been made:
Enhanced GUI
If you have worked with the Web Matrix Project Version 0.5, the first thing you'll notice when firing
up the Web Matrix Reloaded is the enhanced GUI. The toolbar icons and overall look and feel of the
Web Matrix Reloaded have a much more Windows XPish-look than the Windows 2000 look of the earlier version.
Settings Remembered
The Web Matrix Project has always supported FTP connections to remote Web sites to allow for remote
editing of files. Furthermore, the Web Matrix Project provided a Data pane, from which one could create
databases and database tables. While these tools were very handy, one very annoying features was that
the Web Matrix Project did not remember these settings across application restarts. That is, if you
loaded up the Web Matrix Project, made a connection to an FTP Server, edited some files, and then
closed the Web Matrix Project, the next you started the application back up, the FTP Server connection
you had specified earlier wouldn't be present. To reinstate this FTP Server connection, you'd have to
go through the entire process of specifying the FTP server name, the username, and password, only to
have to repeat this information again the following time you started the Web Matrix Project. Ditto
for the databases in the Data pane.
Thankfully, Version 0.6 improves the editor's "memory". Now, FTP and database settings specified
are remembered across application restarts.
Support for Access
In Version 0.5, the data access tools and Code Wizards only support Microsoft SQL Server 7.0+ databases.
With Version 0.6, Access support is now included.
Data Access Tools GUI Looks More Like SQL/Access GUIs
In Version 0.5, the tools for viewing database data and editing/creating database tables were simple to
use, but did not have the same look and feel of the corresponding tools in Access and the SQL Server Enterprise
Manager. These tools' GUIs have been updated to reflect the standard data access GUIs.
J# Support Now Included
Version 0.5 provided support for creating ASP.NET Web pages using either VB.NET or C#. Version 0.6 includes
both of these languages as options, as well as adding Microsoft's latest .NET language choice:
J#.
Dynamic User Control Rendering in Design View
For ASP.NET Web pages that contain user controls,
the user controls are dynamically rendered and their HTML displayed in the Web page designer.
For example, imagine that you create a user control whose content is the simple HTML output "Hello, world!", in
a bold font. Now, when this user control is added to a Web page in the Web Matrix Reloaded, you'll see the following
output when viewing the ASP.NET Web page through the Design tab:
A complete list of the enhancements, bug fixes, and additions can be seen at the
Release Notes.
What's Missing from the Web Matrix Reloaded
The number one complaint from users with the Web Matrix Project was its lack of IntelliSense. Many
developers loved the ASP.NET-focused aspects of the Web Matrix Project and its small filesize and light
memory footprint, but stuck with Visual Studio .NET solely due to IntelliSense. Sadly, the Web Matrix
Reloaded continues this practice, omitting IntelliSense.
As I see it, there are a number of reasons IntelliSense has been omitted, and will forever continue
to be omitted from the Web Matrix Project:
Adding IntelliSense is hard. That's not to say that the ASP.NET Team could not include it, but
doing so would take much time and effort and likely add much to the Web Matrix Project's file size.
Adding IntelliSense removes a key selling-point of Visual Studio .NET. Visual Studio .NET costs
thousands of dollars, and helps line the Microsoft coffers. By providing IntelliSense in the Web Matrix
Project - a free IDE - ASP.NET developers would have less need for VS.NET, thereby driving sales down.
One option would be to offer a "professional" version of the Web Matrix Project, one with IntelliSense
and perhaps code-behind support, for a nominal charge, say $100. I don't think this route is very likely,
though.
Keep in mind that the Web Matrix Project is targeted at enthusiasts, developers new to ASP.NET, and
open-source types. It's geared to those who will only start trying out ASP.NET if there exists a
low-cost option. Specifically, it is not targeted at professional ASP.NET developers who
are willing to plunker down the money for VS.NET.
Conclusion
The Web Matrix Reloaded is the latest update from Microsoft's original Web Matrix Project release.
This update, Version 0.6, offers a number of enhancements, bug fixes, and added features. For a complete
list of these, see the Release Notes. Unfortunately, Version 0.6
didn't fix Version 0.5's major downside - lack of IntelliSense support. Despite this lack of a key
feature, though, the Web Matrix Reloaded definitely has its uses - it's free and is great for
quickly editing/creating single ASP.NET Web pages. If you have not already checked it out, I highly
recommend it!
More Complete Information...
A much more thorough listing of the Web Matrix Reloaded's new features can be seen in
Christian Weyer's blog.