ITfjernundervisning

ASP.NET / .NET introduktion / Mere om VS.NET

Visual Studio .NET

Visual Studio .NET er et stort udviklingsværktøj, som kræver en lidt nærmere forklaring.

Brugerfladen

Ja, den har du allerede set, men jeg vil gerne knytte nogle kommentarer til de enkelte vinduer:

ASP.NET kursus - visual studio .net (vs.net) brugerflade  2 - fjernundervisning

Toolbox (vinduet i venstre side)

I toolboxen kan du finde de forskellige kontroller du kan indsætte på dine web-sider. De er inddelt i forskellige kategorier, men vi bruger primært Web Forms. Toolboxen har også en Server explorer fane, hvor man kan se SQL servere mm. Den bruger vi ikke meget.

Properties (vinduet nederst i højre side)

Her kan man sætte egenskaber for de forskellige kontroller. Indholdet af vinduet ændrer sig efter, hvilken kontrol der er markeret i arbejdsområdet eller valgt i dropdown boksen i toppen af vinduet.

Solution Explorer

Er en projekt stifiner, hvor du kan se filerne i dit projekt. Læg mærke til, at der er Vis alt knap i toppen af vinduet (det er den der er markeret med den blå ramme).

Lidt om de enkelte filer i projektet

VS.NET opretter automatisk en række filer:

WebForm1.aspx

En tom web-form som VS.NET har lavet til os.

WebForm1.aspx.vb

Codebehind fil til WebForm1.aspx (mere om dette senere).

Web.config

er, som navnet antyder, en fil, der styre konfigurationen af dit web-sted. Filen har til start følgende indhold (jeg har fjernet kommentarerne):

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <system.web>
    <compilation defaultLanguage="vb" debug="true" />
    <customErrors mode="RemoteOnly" />
    <authentication mode="Windows" /> 
    <authorization>
      <allow users="*" /> <!-- Allow all users -->
    </authorization>
    <trace enabled="false" requestLimit="10" pageOutput="false" traceMode="SortByTime" localOnly="true" />
    <sessionState 
      mode="InProc"
      stateConnectionString="tcpip=127.0.0.1:42424"
      sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes"
      cookieless="false" 
      timeout="20" 
    />
    <globalization requestEncoding="utf-8" responseEncoding="utf-8" />
  </system.web>
</configuration>

Som det fremgår kan man styre en række områder

  • customErrors: giver dig mulighed for at styre, hvilken side, der skal vises når der opstår fejl (side ikke fundet, server fejl og den slags). Vær opmærksom på, at dette kun virker på .NET filer, hvilket betyder, at hvis brugeren spørger efter en .html side, der ikke findes så er det den "almindelige" 404 side der bliver vist.
  • authentication: styrer, hvilken login procedure der skal bruges, hvis brugeren forsøger at bevæge sig ind i et lukket område (mere om dette senere)
  • authorization: hvem må hvad! (mere om dette senere)
  • trace: et debug værktøj, som vi også skal se på senere
  • sessionState: en mulighed for at styre, hvordan sessioner håndteres på web-sitet. Det kommer vi ikke nærmere ind på på dette kursus
  • globalization: styrer, hvilket tegnsæt, der bruges. Bør med det samme rettes til:
    <globalization
       fileEncoding="iso-8859-1"
       requestEncoding="iso-8859-1"
       responseEncoding="iso-8859-1"
       culture="da-DK"
       uiCulture="da-DK"
    />

Styles.css

Ja, det er et stylesheet. MEN der er desværre ingen automatik indbygget omkring stylesheets - de skal stadig mauelt kobles til den enkelte side.

Global.asax

En fil, der indeholder en række hændelsesprocedurer omkring web-sitet. Codebehind filen har dette indhold (i VB.NET)

Imports System.Web
Imports System.Web.SessionState

Public Class Global
    Inherits System.Web.HttpApplication

    Sub Application_Start(ByVal sender As Object, ByVal e As EventArgs)
        ' Fires when the application is started
    End Sub

    Sub Session_Start(ByVal sender As Object, ByVal e As EventArgs)
        ' Fires when the session is started
    End Sub

    Sub Application_BeginRequest(ByVal sender As Object, ByVal e As EventArgs)
        ' Fires at the beginning of each request
    End Sub

    Sub Application_AuthenticateRequest(ByVal sender As Object, ByVal e As EventArgs)
        ' Fires upon attempting to authenticate the use
    End Sub

    Sub Application_Error(ByVal sender As Object, ByVal e As EventArgs)
        ' Fires when an error occurs
    End Sub

    Sub Session_End(ByVal sender As Object, ByVal e As EventArgs)
        ' Fires when the session ends
    End Sub

    Sub Application_End(ByVal sender As Object, ByVal e As EventArgs)
        ' Fires when the application ends
    End Sub

End Class

AssemblyInfo.vb

Indeholder generelle informationer om web-applikationen. Vi kommer ikke nærmere ind på det på dette kursus.

\bin\"dit projektnavn".dll

I bin folderen ligger der en .dll fil, der kommer til at indeholde en kompileret udgave af den kode du skriver til alle dine web-sider i projektet. Det har noget med codebehind at gøre - mere om dette senere.


Aflevering af øvelser

Jeg vil anbefale at du laver et nyt projekt i Visual Studio .NET som du f.eks. kalder ASPNET kursus, som skal indeholde alle dine besvarelser. I det projekt laver du en mappe til hver øvelse f.eks. "HelloWorld". Og den webform, der udgør besvarelsen på HelloWorld øvelsen kalder du default.aspx.
Når du så skal lægge din besvarelse på dittenogdatten.dk opretter du en tilsvarende mappe på dittenogdatten.dk og kopirer din default.aspx og default.cs eller default.vb fil den mappe. Desuden skal du kopiere din .dll fil til bin mappen i roden på dittenogdatten (du skal selv oprette mappen). Så skal koden kunne køre f.eks. på adressen http:// "dit navn" .dittenogdatten.dk/helloworld. Det eneste du så behøver er, at sende mig en mail med besked om, at det ligger der.


Når du har betalt for kurset får du adgang til øvelser til hver lektion.
Og når du har fået godkendt din besvarelse får du desuden adgang til mine løsningsforslag med ekstra tips og trix.