The ASP.NET Web Matrix ProjectBy Scott Mitchell
|For More on Web Matrix...|
For another article discussing the Web Matrix project be sure to check out
Meet the Web Matrix Project.
It's an article I wrote for asp.netPRO Magazine in the August 2002 issue!
In January 2003, the Web Matrix project creators Scott Guthrie and Nikhil Kothari provided a lengthy discussion and demonstration of the Web Matrix Project on the MSDN show.
Finally, there are a number of books available that focus exclusively on the using Web Matrix Project. These include:
Back when ASP.NET was in Beta, the ASP.NET team decided that while Visual Studio .NET was a great overall development tool, it had three inhibiting drawbacks:
- Its size,
- Its cost, and
- Its "do everything" nature
If you've used Visual Studio .NET you know that it has an imposing memory footprint, file size, and price tag. The Enterprise edition, for example, costs several thousand dollars and spans multiple CDs; furthermore, if your development machine has, say, 128 MB of RAM, you must be a very patient person to use VS.NET! Also, Visual Studio .NET is designed to be the only tool a Microsoft developer would need. It can be used for creating .NET applications, building Web services, designing ASP.NET Web pages, for creating graphic files (like simple icons or bitmaps), and so on.
In order to combat these problems of Visual Studio .NET, the ASP.NET team set out to create a new developer tool, one that was geared solely for the ASP.NET developer. This tool, the team decided, must be small, agile, great at what it does, and inexpensive. Today (June 17th, 2002), the ASP.NET team has released their tool to the public. This tool, which is still in Beta testing, is called the ASP.NET Web Matrix Project.
Small, Agile, and Inexpensive
The ASP.NET Web Matrix Project (or Matrix, for short) is indeed small, agile, and inexpensive. The tool, in its compressed, downloadable form, is a mere 1.2 MB - small enough to fit on a floppy! When installed, it consumes only 2.5 MB of disk space. (Of course you must have the .NET Framework installed on your development machine, which can take many tens of megs, or hundreds of megs if you install the samples and documentation.)
Matrix is also a great development tool for ASP.NET Web pages, containing many of the useful features of Visual Studio .NET and adding some new ones to make ASP.NET Web application development easier. For example, Matrix contains a RAD Designer view like Visual Studio .NET, allowing you to drag and drop Web controls onto a Web page, and to set properties of Web controls through a property page. Matrix also contains various "views" of an ASP.NET Web page - you can opt to view both the source code and HTML, just the HTML, just the source code, or the WYSIWYG Designer.
Some features included in Matrix that you will not find in Visual Studio .NET is FTP support. That is, you can make a direct FTP connection to the development box and move files that way (Front Page extensions need not be installed on the remote server). Matrix also contains Code Wizards which, when selected, prompt you to fill in a few form fields and then automatically produce code based on the information you entered. For example, the Send Email Code Wizard prompts you for information like the To, From, Subject, Body, and Mail Server fields, and then automatically generates the needed source code upon completion. (There are also Code Wizards for common database tasks.)
Matrix also ships with the Matrix Web Server, which is similar to classic ASP's Personal Web Server. The Matrix Web Server can be used on Windows 2000 or Windows XP (Home or Pro); it can handle only local requests (so you don't have to worry about Code Red-type attacks affecting the Web server), and is intended for testing pages you've written in Matrix. It is very easy to use and can be launched directly from Matrix.
Finally, for those developers on a budget, you'll truly enjoy the cost of Matrix - it's free! Yes, you read that right, Matrix is 100% free, no costs at all!
Visual Studio .NET vs. Matrix
While Matrix has many cool features that Visual Studio .NET does not, it lacks a few things which, if you're currently using Visual Studio .NET, may make you not as interested in Matrix. Most notably is Matrix's lack of IntelliSense. Also, Matrix does not support integrated debugging of ASP.NET Web pages, as Visual Studio does. So obviously Matrix is not a replacement for Visual Studio .NET (if it was, do you think they'd be giving it away for free?). Rather, Matrix is a good fit for those who don't own Visual Studio .NET (and are perhaps using Visual InterDev or Notepad or UltraEdit or...).
Personally, I find Matrix to be a better IDE for creating ASP.NET Web pages than VS.NET. I use Matrix for creating ASP.NET Web pages and Visual Studio for making components, custom controls, and .NET applications. While Matrix lacks IntelliSense (which is a triffle annoying if you're accustomed to VS.NET), it does not force the use of code-behind development. Regardless of your situation, I'd recommend that you download Matrix (after all, it's free and a mere 1.2 MB download) and try it out and decide for yourself where it fits in your developer toolbox.
Downloading and Installing Matrix
You can download Matrix from the ASP.NET Matrix Project homepage on www.asp.net. There's a guided tour to familiarize yourself with Matrix, a Matrix FAQ section, and a forum to post questions and comments about Matrix. Remember, Matrix is still in Beta development, although as an alpha tester of Matrix for several months, I can attest to its relatively bug-free usage. There's also a free 72-page online book from Wrox on Matrix that you can read.
With the release of Matrix ASP.NET development has gotten easier and cheaper, especially if you are not using Visual Studio .NET for development. I have been working with Matrix for many months now as an alpha tester and am thoroughly amazed at how utterly useful this development tool is. My hat goes off to the ASP.NET team for yet another cool and very useful product. I hope you try out Matrix and are as impressed and amazed as I am!