Quello che dovremmo avere in uno strato di business logic (BLL)
-
22-09-2019 - |
Domanda
So che questa è una domanda molto semplice. Ma sono davvero non in grado di comprendere ciò che dovremmo avere in BLL.
Lasciatemi fare un esempio.
Consideriamo una pagina web Login.aspx, che viene utilizzato per facilitare l'accesso utente.
In questo caso Login.aspx avrà due caselle di testo e un pulsante di accesso. (Presentation Layer).
Data Access Layer avrà funzioni per controllare se il nome utente e la password siano corretti.
Non penso che ho bisogno di qualcosa di diverso in questa pagina. Allora, cosa avrò in BLL.
Se si desidera aggiungere alcune funzionalità che dovrebbe venire in BLL, si prega di aggiungere.
Soluzione
Si dovrebbe avere qualcosa di simile:
L'interfaccia utente chiama BL.SaveUsernameAndPassword(string user, string pass);
BL.SaveUsernameAndPassword
deve validare le corde, e quindi chiamare DAL.SaveUsernameAndPassword(string user, string pass);
DAL.SaveUsernameAndPassword
dovrebbe mettere questi parametri nella vostra query SQL ed eseguirlo, con il presupposto che i dati siano validi
Altri suggerimenti
No, la BLL controlla se il nome utente e la password siano corretti. L'DAL è solo per l'accesso ai dati.
"Data Layer Acess avrà funzioni per controllare se il nome utente e la password sono corretti" - sbagliato. Il BLL lo farà, il DAL sarà solo recuperare (o cercare di recuperare) le informazioni dell'utente, senza fare alcun controllo su di esso.