15 messaggi dal 07 novembre 2007
Oggi sono in vena di domande!
Ho un dubbio sull'implementazione della struttura del programma, faccio un esempio pratico (restringo solo ai punti salienti):

Ho un database con:
Tabella Regioni (ID, Nome)
Tabella Province (ID, FKRegione, Nome)
Tabella Comuni (ID, FKProvincia, Nome)

Ho creato le varie classi una per ogni tabella:
Classe Regione
attributi: int id, string nome
Clasee Provincia
attributi: int id, int fkRegione, string nome
Classe Comune
attibuti: int id, int fkProvincia, string nome

Ovviamente ogni classe ha metodi per l'inserimento nel db ed il recupero con select.
Nel database ho tutti i vincoli per le relazioni tra le tabelle (le ometto, mi sembrano abbastanza chiare).
Per avere una struttura + logica nel codice server, secondo voi, mi potrebbe convenire tenere anzichè l'int fkRegione direttamente un oggetto Regione (magari è + facile lavorarci poi a livello di codice, non ne sono sicuro) e aggiungere anche un array dei comuni dipendenti?

In questo modo la struttura sarebbe + o - questa:
Classe Regione
attributi: int id, string nome, Provincia[] Province
Clasee Provincia
attributi: int id, Regione fkRegione, string nome, Comune[] comuni
Classe Comune
attibuti: int id, Provincia fkProvincia, string nome

Spero di essere stato abbastanza chiaro nella mia spiegazione (magari qualcuno si metterà le mani nei capelli!).

Se entrambe sono possibili vorrei sapere quali sono i vantaggi e gli svantaggi di ogni struttura.

Grazie a tutti
da un punto di vista del Domain Model meglio l'array ,anzi ancora meglio usare le collezioni generiche tipo Collection<Provincia>.

naturalmente a te sta l'onere di caricare e gestire ad esempio nelle Regioni le Provincie collegate

ciao marco

Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio

http://nostromo.spaces.live.com/default.aspx
15 messaggi dal 07 novembre 2007
Quindi mi conviene utilizzare anche un oggetto regione per memorizzare la regione di dipendenza anzichè un int con il relativo id della regione nel db?
Ti ringrazio per la pazienza, Alesandro
si sarebbe cosa giusta, naturalmente come sempre sta a te mantenere coerenti i dati e le relazioni

ciao marco

Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio

http://nostromo.spaces.live.com/default.aspx

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.