Lead Manager: differenze tra le versioni

Da Webmobili Wiki.
Riga 16: Riga 16:
==== Livello Entity ====
==== Livello Entity ====
Nel progetto <code>LeadManager.Entities</code> creare un file <code>NomeClasse.cs</code> nel quale
Nel progetto <code>LeadManager.Entities</code> creare un file <code>NomeClasse.cs</code> nel quale
* creare una nuova classe <code>NomeClasse : BaseEntity</code>
* creare una nuova classe <code>NomeClasse : BaseEntity</code> che definisca esattamente i campi della tabella come property
* creare una nuova classe <code>NomeClasse_List : BaseEntityList<NomeClasse></code>
* creare una nuova classe <code>NomeClasse_List : BaseEntityList<NomeClasse></code>
* creare una nuova classe <code>NomeClasse_SearchParameters : BaseEntitySearchParameters</code>
* creare una nuova classe <code>NomeClasse_SearchParameters : BaseEntitySearchParameters</code>
* creare una nuova classe <code>NomeClasse_ActionParameters : BaseEntityActionParameters</code>
* creare una nuova classe <code>NomeClasse_ActionParameters : BaseEntityActionParameters</code>

Versione delle 13:51, 4 set 2024

Progetto che prevede API e Frontend,
il primo sviluppato in MVC e il secondo in Web Forms.

Struttura

Il Frontend utilizza due livelli di astrazione: biz e dal.

  • biz : La logica applicativa, mette a disposizione i modelli e quando deve recuperare informazioni dal database si affida al livello inferiore dal
  • dal : Il livello basso, nel quale vengono chiamate le vere e proprie stored procedure.
  • entity: Definizione delle entità tabelle usato da dal

biz e dal sono veri e propri progetti nella soluzione.

Esempio di implementazione

Dovendo implementare la nuova configurazione che permette ai negozi di filtrare le richieste in base al budget,
vogliamo costruire da zero i livelli dal e biz seguendo la struttura del progetto.

Livello Entity

Nel progetto LeadManager.Entities creare un file NomeClasse.cs nel quale

  • creare una nuova classe NomeClasse : BaseEntity che definisca esattamente i campi della tabella come property
  • creare una nuova classe NomeClasse_List : BaseEntityList<NomeClasse>
  • creare una nuova classe NomeClasse_SearchParameters : BaseEntitySearchParameters
  • creare una nuova classe NomeClasse_ActionParameters : BaseEntityActionParameters