Bereich: Allgemein

Unverarbeiteter Stoff ASP.NET

Seite Anlegen

Seitenaufbau

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

CodeFile=Datei mit Code Behind
Inherits= Abgeleitet von...

Startphase

Erster Seitenaufruf / Session Beginn

  • Event Application Start
  • Event Session Start
  • Event Page_PreInit (ab v2.0 z.B. für Masterpage)
  • Event Page Init
  • Event Page Load
  • Event PreRender
  • Seite wird zum Browser gesendet
  • Event Page Unload wird auf dem Server ausgelöst

Weiterer Seitenaufruf (PostBack) ohne Controls

  • Page Load
  • Page PreRender
  • Seite zum Client
  • Page Unload

Weiterer Seitenaufruf (PostBack) mit Controls

Inhalte von Controls werden in ViewState übertragen.

  • Page Load
  • Page PreRender
  • Seite zum Client
  • Page Unload

Session Ende

Session wird standardmässig nach 20 Minuten automatisch beendet.

  • Event Session_End wird auf dem Server ausgelöst
  • Event Application_End

Weitere Events

  • Page_Error
  • Page_AbortTransaction
  • Page_CommitTransaction
  • Page_DataBinding
  • Page_Dispose

Validation Controls

  • TextBox erstellen
  • Required Validator erstellen
    - Eigenschaft Text (Erscheint im Required Validator bei fehlender Eingabe)
    - ControlToValidate bestimmen. Für welches Control gillt dieser Validator

 

Navigation zwischen Seiten

  • Hyperlink
  • LinkButton, ImageButton, Button
    • Response.Redirect("NextPage.aspx")
    • Server.Transfer()
    • Server.Execute() Im Bereich einer Seite wird eine andere Seite ausgeführt. Eher durch Masterpage ablösen
  • window.open() Client-seitiges JavaScript.

in Page Load:

int x = request....

 

onclick="window.open('Seite.aspx')" value="xxxx"

 

Zustandsmanagement

Server-Seitig

  • Session State
  • Application State
  • Cache Objekt (Performance optimierung, nicht für Zustandmanagement)
  • Klassenvariablen (static)
  • Datenbank

Client-Seitig

  • Cookies
  • ViewState (beidseitig)
  • String Abfragen (QueryString)
  • Versteckte Felder

 

Technik senden  vin 1. Seite lesen auf 2. Seite
Verstecktes Feld HTML-Tag: <input type="hidden" value="Wert" id="KeyName"> C# Code: string strValue = Request.Params["KeyName"];
Cookie HttpCookie myCookie = new HttpCookie("MyTestCookie");
DateTime now = DateTime.Now;

myCookie.Value = now.ToString();
myCookie.Expires = now.AddMinutes(1);
Response.Cookies.Add(myCookie);

Ohne Ablaufdatum ist das Cookie flüchtig und wird beim Beenden des Browsers gelöscht.

HttpCookie myCookie = new HttpCookie("MyTestCookie");
myCookie = Request.Cookies["MyTestCookie"];
if(myCookie != null) {
  string vName = myCookie.Name;
  string vWert = myCookie.Value;
}
ViewState    
Session Objekt C# Code: Session["Vorname"] = "Hallo"; C# Code: string vVorname = Session["Vorname"];
Application Objekt C# Code: Application["Benutzer"] = "Markus"; C# Code: string vBenutzer = Application["Benutzer"];
Globale Variablen in global.asax    

Session

Lebensdauer der Session (in Minuten)
Session.Timeout = 5;

Maximale Grösse: Unbegrenzt

Application Objekt

Gibt es pro Server einmal, mehrere Benutzer greifen gemeinsam darauf zu.

Schreibender Zugriff muss, weil die Möglichkeit des Mehrfachzugriff besteht, gelockt werden. Application.Lock(); in try bis Application.Unlock() (in finally weil immer ausgeführt wird)

WebService

Ein Webservice ist die Kommunikation zwischen zwei Applikationen. Der Webservice liefert der Applikation XML Daten oder Empfängt Daten von der Applikation.

Webservice erstellen

  • Neues Projekt ASP.NET Webservice mit Name TimeUtility
  • Ausführen und es geht schon.
  • Neue Methode wie helloWorld implementieren.

Anwendung erstellen

  • Neues Windows Form Projekt mit Button und Textbox
  • - Add Service Reference mit Adresse von WebService
    - Go testet
    - Advance -> Webreference Name festlegen z.B. TimeUtility
     
  • Im Code Button1_Click code für Webservice aufruf schreiben
    - TimeUtility.Service1 svrc = new WebServiceClient.TimeUtility.Service1();
    - TextBox1.Text = svrc.getTime("Wsdkdkdk");

 

Fehlerbehandlung

GetLastError()
ClearError()

Fehlerseiten definieren im WebConfig

<CustomErrors mode = "on" defaultRedirect="ErrDefault.aspx">
   <error statusCode="401" edirect="ErrUnathorize.aspx" />
</customErrors>

Mode=On Fehlerseite kommt im Debug
Mode=off Im Debug wird gedebugt, Fehler erscheint nur online

Seitenspezifischer Ausnahmefehler behandeln

<@page ErrorPage="ErrDefailt.aspx" %>

Fehlerbehandlung auf Applikationsbasis

 

Tools

Log4net opensource Tool für logging

 

Trace.axd

Wenn in WebConfig konfiguriert liefert jede WebApplikation ein Log aus.

<trace></trace>

Eigene TraceMeldungen:
Trace.Write("Text");
Trace.Warn("Text");

 

 

Benutzerverwaltung

 

 

 


Ihre Werbung hier

 

Haftungsausschluss: Verwendung der Informationen auf Ihre eigene Gefahr. Wir übernehmen keinerlei Haftung. Beachten Sie auch den Haftungsausschluss.


Wenn Sie Wünsche, Anregungen, Verbesserungen, Korrekturen oder sonstige Vorschläge zu dieser FAQ haben: . Wir freuen uns auf Ihr Mail.


 Und jetzt noch ein bisschen Werbung...

Stellensuche, Jobangebote unter www.notizia.ch/stellensuche