ASP.NET Web Matrix Project - Een eerste kijk
Door Michiel van Otegem
26 juni 2003
Op het eerste gezicht is het ASP.NET Web Matrix Project gewoon een editor voor ASP.NET
pagina's. De naam verraadt echter dat het meer is dan dat. Dit artikel vertelt je
wat het ASP.NET Web Matrix Project precies is en hoe het tot stand is gekomen.
Daarnaast zal je bekend gemaakt worden met verschillende onderdelen van de editor.
Active Server Pages (ASP) heeft sinds z'n introductie in het begin van 1997 een
enorme schare "fans" opgebouwd. Er zijn wereldwijd meer dan een miljoen ASP
programmeurs en dat maakt ASP de populairste technologie voor het maken van web
applicaties. Dit komt grotendeels omdat ASP conceptueel simpel is, maar er desondanks
veel mee kan. Toen ASP.NET ontwikkeld werd, was de doelstelling om het zo simpel
als ASP te maken, maar zonder de nadelen die ASP heeft (zoals snelheids- en stabiliteitsproblemen).
Hoewel dit goed gelukt is, vergt ASP.NET een behoorlijke andere denkwijze.
Sowieso is het hele .NET Framework nieuw, en het kost nieuwe technologieën nu
eenmaal een tijdje om populair te worden. Dit alles hebben de makers van ASP.NET
ook bedacht en zij zijn daarom gaan nadenken over methoden om mensen snel op weg
te helpen met ASP.NET. Het ASP.NET Web Matrix Project is daarvan het resultaat.
Het "project" is dus in feite het snel populair maken van ASP.NET, en een makkelijke
editor maakt daar deel van uit. Een ander belangrijk onderdeel van dit project is
de reeds bestaande ASP community, waaronder de mailinglists van
ASPAlliance.com,
en de vele forums (zoals ook de Nederlandse forums op ASPNL). Verder zijn er
letterlijk tientallen top websites die wat vertellen over ASP en ASP.NET.
Het ASP.NET team heeft de leidende figuren van de community betrokken bij het
ASP.NET Web Matrix Project. In eerste instantie door de leiders binnen de
community mee te laten denken over de editor, en later door deze groep ook de
gelegenheid te geven de editor te testen. Daarnaast bevat de editor een scherm
met toegang tot de belangrijkste bronnen van informatie over ASP.NET binnen de
community, zoals forums, nieuwsgroepen, en natuurlijk de eerder genoemde mailinglists,
alsmede links naar de belangrijkste community websites. Als laatste zit er in de
editor directe toegang tot de groep "My ASP.NET Contacts" in MSN Messenger, zodat
je vanuit de editor vragen kunt stellen aan bevriende ontwikkelaars. Dit is ook
waar de keuze voor de naam "Web Matrix" naar voren komt, omdat de editor de
mogelijkheid geeft je te verbinden met je mede-ontwikkelaars op het web, zodat
er een soort matrix (of web) ontstaat.

Figuur 1, Links naar forums en nieuwsgroepen

Figuur 2, MSN Messenger ondersteuning
De ASP.NET Web Matrix Project editor is volledig geschreven in C# en draait dus
bovenop het .NET Framework. De editor is zo gemaakt dat ASP programmeurs er snel
mee op weg kunnen. Dit merk je al door de kleine download (1,2 MB via
http://www.asp.net/webmatrix,
de snelle installatie (in tegenstelling tot Visual Studio .NET dat meer dan een
uur kan vergen om te installeren), en de snelheid waarmee de editor opstart.
Verder bevat de editor allerlei kant en klare sjablonen die je kunt gebruiken om
veel voorkomende pagina's te maken. Onder deze sjablonen vind je bijvoorbeeld een
sjabloon voor een overzicht uit de database met de mogelijkheid om details op te
vragen, en sjablonen om een website (of gedeelte daarvan) te beveiligen. In principe
zijn de sjablonen al 100% functioneel, en hoef je ze alleen aan je eigen wensen aan te passen (echt snel op weg dus).
De editor heeft de look & feel die je gewend bent van Microsoft ontwikkeltools,
en lijkt met name veel op Visual InterDev, een veelgebruikte tool voor ASP
programmeurs. De editor heeft niet alle toeters en bellen die Visual Studio heeft,
maar aangezien programmeurs er snel mee op weg moeten kunnen mag het ook niet te
ingewikkeld worden. Wel overlegt het ontwikkelteam met de leiders in de ASP.NET
community over mogelijke toevoegingen die handig zijn. Omdat de editor gratis is
en blijft, zullen er echter geen rigoureuze veranderingen meer komen. Een leuke
extra die er nu al bij zit is een kleine webserver, die lokaal bestanden kan
serveren. Deze webserver werkt op alle Windows versies die Internet Information
Server (IIS) én ASP.NET ondersteunen, te weten Windows 2000 en hoger, met
uitzondering van Windows XP Home Edition. Het aardige is dat deze webserver ook
werkt op Windows XP Home Edition, waar IIS niet op werkt. Helaas werkt het niet
op Windows 9x en Windows NT4, omdat daarop het .NET Framework niet de benodigde
libraries voor ASP.NET bevat. De editor zelf werkt wel op die versies van Windows.
In de editor heb je keuze uit vier verschillende schermen waarmee je een pagina
kunt bewerken. Standaard opent een pagina in Design-mode, en verder heb je de
keuze uit HTML, Code, en All (alles). Design-mode biedt een grafische omgeving
die je in staat stelt om pagina's visueel te wijzigen, zonder dat je HTML of
ASP.NET code hoeft aan te passen (zie figuur 3).

Figuur 3, Design-mode van de editor
In Design-mode kun je vanuit de toolbox HTML elementen en server controls op de
pagina slepen. Je krijgt dan te zien hoe de pagina er (min of meer) in Internet
Explorer uit komt te zien. In de toolbox kun je ook zelfgemaakt controls of
controls van derden invoegen, en verder kun je stukken code kwijt onder snippets.
Als je een server control selecteert kun je deze wijzigen via de zogenaamde
property grid. Figuur 3 bevat een Calendar control en een Label control, waarbij
de Caledar control (calendar1) geselecteerd is. In figuur 4 zie je de bijbehorende
property grid, waarin je o.a. lettertypes en kleuren van verschillende delen van
de kalender kunt wijzigen. Ook zie je een link Auto Format... waarmee je de kalender
een aantal voorgebakken looks kan geven, die je vervolgens weer naar eigen wens
kunt wijzigen via de property grid.

Figuur 4, Property grid van de Calendar control
In HTML weergave krijg je alleen het HTML gedeelte van de pagina te zien. Alle
server code in de pagina (dat tussen <script runat="server"> tags staat) krijg je
niet te zien. Dit is dus uitermate handig als je alleen de weergave wil wijzigen
en niet de functionaliteit, en is dus ook bruikbaar voor ontwerpers. In Code
weergave krijg je juist alleen de server code te zien die in de pagina staat,
zonder de omringende <script> tags. Hoewel dus alle code gewoon in één bestand
staat (er wordt geen gebruik gemaakt van code behind zoals in Visual Studio .NET),
kun je toch gescheiden werken. De All weergave geeft uiteindelijk wel alle code
weer, inclusief de pagina declaratie en bijvoorbeeld namespace declaraties.
Om het geheel nog makkelijker te maken voor programmeurs bevat de toolbox in code
weergave een aantal zogenaamde Code Builders. Met deze Code Builders kun je database
functionaliteit maken voor het selecteren, invoegen, bijwerken of verwijderen van
records, en kun je code laten maken voor het versturen van email. De Code Builders
genereren kant en klare, aanroepbare functies, zonder dat je een regel code hoeft
te schrijven of aan te passen.
De editor werkt niet op basis van projecten, zoals veel andere tools, maar op basis
van bestanden. Je hebt daarom in de Workspace toegang tot het bestandssyteem van
de lokale computer (of netwerk shares). Verder kun je ook één of meerdere FTP-sites
openen, waar je eventueel meteen een URL aan kunt koppelen, zodat je vanuit de
editor de browser op kunt starten. De editor heeft geen ondersteuning voor Frontpage
Server Extensions, en vooralsnog blijft dit zo. In het Workspace venster vind je
ook het tabje Data. Via dit tabje kun je databases beheren, zoals SQL Server, en
de eventueel mee te installeren MSDE database. Via de beheer tools kun je gegevens
uitlezen, maar ook nieuwe databases maken, en tabellen in databases maken en
wijzigen.

Figuur 5, De Workspace geeft toegang tot bestanden en databases
Al met al is de ASP.NET Web Matrix Project editor zeer compleet en stabiel.
Web Matrix is en blijft echter een Technology Preview, een speeltuin om zaken
uit te proberen voor bepaalde producten. Zo zullen sommige concepten terug komen
in bijvoorbeeld Visual Studio .NET. Voor mensen die nog niet gekeken hebben naar
ASP.NET is de editor een goede opstap. Helemaal omdat je via de editor snel
toegang kun krijgen tot de belangrijkste informatiebronnen op het internet.
|