Frage

Ich habe vor kurzem gelernt über Data Access Layer, Business Logic Layer und Präsentationsschichten, aber ich habe noch ein paar Dinge, die nicht ganz klar sind.

kann ich die DAL und BLL mit dem Presentation Layer verwenden, um oder Satz Informationen in einer Datenbank zu erhalten.

Aber ich dachte auch über asp Control-Ereignisse, und wie ich sie umsetzen.

Soll ich zum Beispiel versuchen, eine Schaltfläche Click-Ereignis in die BLL setzen oder soll ich es nur in der aspx-Code hinter Datei verlassen?

Und wenn ich sie in die BLL setzen, wie würde ich über das tun dies gehen?

Ich bin nicht sicher, wie ein Ereignis, um eine Methode aufrufen, die in der BLL ist, so dass jeder Beratung würde sehr geschätzt werden.

War es hilfreich?

Lösung

Wenn das Ereignis mit dem Geschäftsmodell zu tun hat, dann sollten Sie eine Methode in der BLL erstellen. Wenn es eine UI Art des Ereignisses ist, behandeln sie in dem Code-behind. So zum Beispiel, wenn der Benutzer klickt auf eine Schaltfläche, um die Versandkosten zu berechnen, in der Click-Ereignishandler (Code hinter) der Taste rufen Sie Ihr BLL Objekt CalculateShipping () -Methode. Wenn jedoch haben Sie einen Knopf, der die Hintergrundfarbe der Seite ändert (ich kein besseres Beispiel denken könnte), dann würden Sie das vollständig in den Code hinter behandeln.

Andere Tipps

In Anbetracht dieser Architektur:

  

Darstellung -> Business -> Daten

sollte Jede Schicht weiß nur über und machen Annahmen über die Schicht unmittelbar rechts daneben. Dies bedeutet, dass die Präsentationsschicht kann auf die Business-Schicht sprechen und es ist API verwenden, aber es sollte nie direkt an die Datenschicht sprechen. Die Business-Schicht kann die Datenschicht API verwenden, aber es sollte nie über oder machen Annahmen über die Präsentationsschicht, dass verbraucht es wissen. Und natürlich die Datenschicht sollte nichts über eine der anderen Schichten kennen.

Wenn Sie das allgemeine Prinzip folgen, werden Sie feststellen, dass Ihre Anwendung einfacher sein wird und leichter zu pflegen.

Um Ihre Frage beantworten, aber Taste klicken Ereignisse in der Präsentationsschicht gehören -. Eine Schaltfläche Click-Ereignis in Ihre Business-Logik setzen würde die Linien zwischen den beiden Schichten verwischen und würde unnötige Kopplung erzeugen

Ihr ASPX Code hinter Datei (Presentation Layer) könnte entweder einen direkten Bezug auf Ihre BLL hat (Ergebnisse in Kopplung) oder Sie können einen serviceorientierten Ansatz. Dies würde bedeuten, Schnittstellen, indem Sie Ihre Presentation Layer referenziert Erstellen und von Ihrem Business Layer implementiert. Während der Initialisierung der Anwendung (das heißt in der Datei Global.asax), können Sie die BLL auf Ihre Presentation Layer über Dependency Injection oder einen anderen Ansatz verbinden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top