Lead Manager: differenze tra le versioni
Da Webmobili Wiki.
| Riga 40: | Riga 40: | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==== Livello DAL ==== | |||
Nel progetto <code>LeadManager.Dal.sql</code><br/> | |||
creare una classe che estenda tutte quelle appena definite nel livello entity. | |||
<syntaxhighlight lang="c#"> | |||
public class ConfigCompanyBudgetDal : BaseDal<ConfigCompanyBudget>, IDataLayer<ConfigCompanyBudget, ConfigCompanyBudget_List,int,ConfigCompanyBudget_SearchParameters, ConfigCompanyBudget_ActionParameters> | |||
</syntaxhighlight> | |||
col compilatore di VS implementare tutti i metodi astratti e di interfaccia. | |||
Versione delle 14:02, 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 : BaseEntityche definisca esattamente i campi della tabella come property - creare una nuova classe
NomeClasse_List : BaseEntityList<NomeClasse> - creare una nuova classe
NomeClasse_SearchParameters : BaseEntitySearchParameterscon i filtri necessari per avere una get delle opzioni budget di una company - creare una nuova classe
NomeClasse_ActionParameters : BaseEntityActionParameters
public class ConfigCompanyBudget : BaseEntity {
public int config_company_budgetID { get; set; }
public int companyID { get; set; }
public int budgetID { get; set; }
}
public class ConfigCompanyBudget_List : BaseEntityList<ConfigCompanyBudget> {
}
public class ConfigCompanyBudget_SearchParameters : BaseEntitySearchParameters {
public int companyID { get; set; }
}
public class ConfigCompanyBudget_ActionParameters : BaseEntityActionParameters {
}
Livello DAL
Nel progetto LeadManager.Dal.sql
creare una classe che estenda tutte quelle appena definite nel livello entity.
public class ConfigCompanyBudgetDal : BaseDal<ConfigCompanyBudget>, IDataLayer<ConfigCompanyBudget, ConfigCompanyBudget_List,int,ConfigCompanyBudget_SearchParameters, ConfigCompanyBudget_ActionParameters>
col compilatore di VS implementare tutti i metodi astratti e di interfaccia.