42 messaggi dal 14 maggio 2004
è possibile realizzare una struttura di questo tipo fra applicazioni web o solamente fra libreria di classi e applicazione web?
Carissima Silvia,

la risposta è assolutamente sì se si vanno ad inserire nei file contenuti nella cartella App_Code le classi che gestiscono le regole di business e la persistenza delle informazioni.

Non è strettamente necessario avere diversi assembly per stratificare l'applicazione a livelli, anche se poi questo approccio puo' essere preferibile.

La scelta di inserire le classi del modello applicativo nella cartella App_Code permette di poter gestire un unico progetto per realizzare l'applicazione, imponendo per contro una certa dose di accopiamento tra gli strati che puo' essere peraltro accettabile se le esigenze di modellazione non sono troppo spinte.

Anche se l'applicazione non è particolarmente complessa, consiglio di provare ad utilizzare un approccio a livelli, inserendo le classi di BBL e DAL nella cartella App_Code. I vantaggi in termini di strutturazione del codice e manutenibilità sono anche in questo caso molto evidenti.

Il fatto di distribuire le responsabilità tra più classi permette di identificare al meglio le diverse funzionalità applicative e di specializzare gli oggetti ad eseguire compiti specifici. Inoltre la stratificazione permette di creare meccanismi di isolamento del codice che permettono di reagire in modo più efficace ai cambiamenti delle specifiche e che favoriscono il riuso del codice senza inutili e dannose duplicazioni.

HTH!

Ciao, Ricky.

Ing. Riccardo Golia
Microsoft MVP ASP.NET/IIS
ASPItalia.com Content Manager
http://blogs.aspitalia.com/rickyvr
http://ricky.aspitalia.com
http://www.riccardogolia.it
42 messaggi dal 14 maggio 2004
Ciao
Per utilizzare il codice di esempio per l'architettura a livelli quale versione di visual studio è richiesta? Ti chiedo questo poichè aprendo la solution, mi apre tutti i progetti tranne il progetto per l'interfaccia UI fornendomi l'errore impossibile aprire il progetto su questa installazione (Visual studio 2005 professional).

Inoltre vorrei fruttare il meccanismo di architettura a livelli per la mia applicazione web, in modo da avere una solution globale che contiene diverse applicazioni web (moduli diversi) che condividono la stessa sessione. E'possibile estendere il concetto di architettura a livelli anche in questo ambiente ??
Grazie mille
Ciao
Silvia
Puoi strutturare a livelli le tue applicazioni indipendentemente dalla versione di Visual Studio utilizzata. Se l'esigenza e' quella di creare un'unica soluzione che includa piu' progetti, la versione Professional puo' andare bene.

La soluzione e' stata creata con Visual Studio Team Suite, se hai problemi nell'aprire la soluzione, prova a crearne una nuova e ad aggiungere ad essa i singoli progetti. Attenzione che lo strato di presentazione richiede l'installazione di Web Application Project (il sito e' anch'esso un progetto) o della SP1 di Visual Studio 2005. Web Application Project e' disponibile all'indirizzo http://msdn2.microsoft.com/it-it/asp.net/Aa336618.aspx ed e' compatibile con la versione Professional in tuo possesso.

La seconda richiesta invece non ha nulla a che vedere con la strutturazione a livelli, ma riguarda piuttosto la definizione di un meccanismo di integrazione cross-site (tu parli di sessione condivisa tra piu' siti). Si tratta di un discorso e di un problema architetturale diverso da quello trattato nell'articolo.

HTH!

Ciao, Ricky.

Ing. Riccardo Golia
Microsoft MVP ASP.NET/IIS
ASPItalia.com Content Manager
http://blogs.aspitalia.com/rickyvr
http://ricky.aspitalia.com
http://www.riccardogolia.it

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.