Jumpstart ASP.NET



  • Hallo Leute,

    ich soll einen Prototypen erstellen für eine Web-Applikation die recht komplex ist.
    Grob geht es um folgendes:
    Es gibt eine Liste an Objekten vom gleichen Typ. Jedes Objekt kann einen bestimmten Status haben.
    Es gibt eine Übersichtsseite, in der jedes Objekt aufgelistet ist und abhängig vom Status sollen verschiedene Optionen angezeigt werden. Diese Optionen sind dynamisch, d.h. je nach Konfiguration sind manche Optionen verfügbar und manche nicht.
    Meine Frage ist jetzt eher architektureller Natur. Bei spezifischen technischen Problemen kann ich mir mit Google gut selbst weiterhelfen.
    Ich habe allerdings nciht genug Erfahrung mit ASP.NET um zu wissen, wie man eine solche Applikation aufbaut.
    Packe ich alle Logik und die Liste der Objekte in einen Web-Service? Oder arbeite ich am Besten mit Code behind und Code in App_Code und lese bei jedem Seitenaufruf alle meine Objekte neu aus meinem Datastorage? Wie mache ich die Konfiguration am Besten?
    Ich bin ein bisschen aufgeschmissen, mir fehlt die gleichbleibende Basis die ich bei Windows-Applikationen habe 🙂
    Würde mich über einen Stoß in die richtige Richtung freuen.
    Ein paar Schlagworte genügen mir schon.

    Danke!



  • So, jetzt hör' mir mal zu!

    Die Datenschicht u. Businesslogik kommen am Besten in eine eigene Klassenbibliothek, die kannst du mit einer Referenz dann in der Webanwendung linken.
    Web-Services benötigst du nur, wenn du Schnittstellen nach außen definieren willst, oder die Objekte von einem anderen Server kommen.

    Aus der eigentlichen Webanwendung sollte jeder Code ferngehalten werden, der nicht direkt auf der GUI aufsetzt. Die Code-Behind sollte lediglich die GUI manipulieren und Methoden aus Businesslogik aufrufen.

    Die Konfiguration kommt in die web.config.

    Sehe dich als erleuchtend an.



  • Erleuchtet. Erleuchtet!

    Erleuchtend bin ja ich!



  • Danke. So hatte ich jetzt auch angefangen.
    Nur wo initialisiere ich meine ClassLibrary am Besten?



  • Page_Load

    if (!Page.IsPostBack)
    {
    // Hier wenn du sie nicht bei einem Postback brauchst
    }



  • ok, d.h. ich suche mir einfach eine Seite aus, mache die zur Startseite und pack das da rein... Alle anderen Seiten müssen diese dann halt aufrufen.



  • Musst du nicht unbedingt. Du kannst die Daten doch auch serialisiert in eine Session packen, auf die hast du in jeder Seite Zugriff und in den Webservices auch.



  • Auch in die Session müssen die Daten initial geladen werden.



  • Na wenn dann eine Masterpage.
    wenn du die aber nicht brauchst muss du eben in jeder seite deine klasseninstanz erstellen wo du sie brauchst.



  • Hilft nix.
    Das Page_Load der MasterPage wird NACH dem PageLoad der entsprechenden ContentPage ausgeführt.
    Wenn man also im PageLoad auf die Daten zugreift, klappt das auch cniht.



  • das ist klar weil die masterpage immer unten angehängt wird im html.

    für dich kommt wohl die global.asax in frage.
    http://msdn.microsoft.com/de-de/library/bb979330.aspx

    eine anlaufstelle wäre die kostenlose hotline von microsoft.
    zu finden unter msdn.microsoft.com
    da ich sowieso in jeder seite aber auf postback checke erstelle ich mir dann bei erstellung der seite auch bereits meine code für solche dinge.
    einfach eine dll welche dann alles drin hat.
    habe ich aber auch mal über die global.asax gemacht.
    mache ich aber auch nicht oft um den überblick nicht zu verlieren.


Anmelden zum Antworten