Programmeren in ASP.NET/Eerste pagina
Hello World in HTML
[bewerken]Dit is wat we willen bereiken, maar nu nog geschreven in statische HTML:
helloworld.html
<html>
<head>
<title>ASP.NET hi people</title>
</head>
<body>
<p>Hello World!</p>
</body>
</html>
Hello World in ASP.NET
[bewerken]Zuiver HTML
[bewerken]Door een bestaande HTML-pagina te nemen en eenvoudigweg de extensie te veranderen in aspx, krijg je een perfect aanvaardbare ASP.NET-pagina. Het enige wat gebeurt is dat de webserver het aspx-bestand nu door de ASP.NET runtime stuurt. De ASP.NET runtime compileert het bestand en verwerkt alle code die het vindt (er is geen code in dit geval) vooraleer het resultaat naar de cliënt gaat.
helloworld.aspx
<html>
<head>
<title>ASP.NET Hello World</title>
</head>
<body>
<p>Hello World!</p>
</body>
</html>
Het enige dat werd veranderd is de bestandsnaam. Als de ASP.NET runtime geen enkele code vindt, laat het alles zoals het is, en geeft het door aan de browser. Hoewel dit allemaal perfect toegelaten is, wordt er natuurlijk weinig uitgevoerd. Laat ons daarom verdergaan naar een versie die tenminste enige verwerking doet.
De klassieke manier met ASP
[bewerken]Een van de goede eigenschappen van ASP.NET is dat de meeste klassieke ASP-code gewoon blijft werken met een minimum aan veranderingen. Als je al ASP kent is het gemakkelijk te zien wat er gebeurt in de code hieronder. Behalve het gebruik van VB in plaats van VBScript is er eigenlijk geen verschil met een klassiek ASP-script.
helloworld2.aspx
<%@ Page Language="VB" %>
<html>
<head>
<title>ASP.NET Hello World</title>
</head>
<body>
<p><%= "Hello World!" %></p>
<p><%= Now() %></p>
</body>
</html>
Om de inline-code (soms ook een render block genoemd) te kunnen verwerken, moet de server weten in welke taal de code geschreven is. De eerste regel in de code hierboven vertelt aan de ASP.NET-runtime-engine dat je Visual Basic (VB) gebruikt als standaardtaal voor de pagina.
Verder staat er in de pagina een standaard Response.Write()-regel die de <%= %> afkorting gebruikt zoals in ASP. Je had ook <% Response.Write("Hello World!") %> kunnen gebruiken in de plaats van <%= "Hello World!" %>.
De code hierboven lijkt bekend, maar ze toont een van de beperkingen van klassieke ASP-scripting. Als je de zin "Hello World!" wil bekomen tussen twee paragraaf-tags, dan moet je de code juist zetten op die plaats. Hierdoor wordt het moeilijk een structuur te krijgen in de code, en krijg je de zogenaamde "spaghetti-code". Het schrijven zelf is niet moeilijk, maar wel het lezen. Andere programmeurs hebben dikwijls uren nodig om de code te ontcijferen. Nu komt ASP.NET van pas.