Applicazione su tre livelli e griglie modificabili dall'utente

giovedì 21 marzo 2013 - 14.47
Tag Elenco Tags  .NET 3.5  |  Windows 7  |  Windows Vista  |  Windows XP  |  Visual Studio 2008  |  SQL Server Express  |  Access (.mdb)

LuchinoTO Profilo | Newbie

Ciao a tutti,
sto iniziando a sviluppare un'applicazione gestionale in C# - Windows Form strutturata sui classici tre livelli User Interface --> Business Logic --> Data Access Layer (quest ultimo basato su database Access, che presto migrerò a SQL Server Express).

Il mio dubbio riguarda l'implementazione delle classiche form in cui l'utente può inserire / modificare dati strutturati come "master / details", come ad esempio fatture, movimenti di magazzino e simili.

Diciamo all' "andata", per popolare la griglia delle righe che l'utente potrà visualizzare / modificare, passo al datasource della mia dataGrid un BindingList<mioOggettoRiga>, e fin qui tutto ok.

Al ritorno, ovvero quando devo fare il salvataggio dei dati, come posso fare per ottenere nuovamente un DataSet (da passare al DAL) partendo dal BindingList<mioOggettoRiga> contenente le modifiche dell'utente?

Ho l'impressione di essere sulla strada sbagliata... qualcuno saprebbe darmi una dritta?

Grazie mille in anticipo!

ridaria Profilo | Expert

O agganci la griglia agli oggetti vb.net data source etc e quindi i pulsantini di riga modifica elimina etc.....

Ma questa strada è le meno controllabile.

Oppure, la migliore, leggi i dati con un data reader lo cicli e popoli la griglia.

Per le modifiche inserimenti dei dati, crei apposite maschere con tanto di controlli text box etc... che usi per la modifica e la aggiunta dei dati.

Questa strada è un pò più lunga ma ritengo migliore in quanto ti offre poi un maggiore controllo/padronanza del codice.


CIAO


Riccardo D'Aria

LuchinoTO Profilo | Newbie

Ciao, grazie per la risposta,
tuttavia credo di non essermi spiegato bene.
Sto sviluppando su tre livelli, quindi lato "form" (user interface) non posso avere codice che fa riferimento esplicito ai dati.

Come posso far "parlare" un datareader (che starà nel DAL) con la griglia (che sta nella form)?

ridaria Profilo | Expert

>Ciao, grazie per la risposta,
>tuttavia credo di non essermi spiegato bene.
>Sto sviluppando su tre livelli, quindi lato "form" (user interface)
>non posso avere codice che fa riferimento esplicito ai dati.
>
>Come posso far "parlare" un datareader (che starà nel DAL) con

COSA è una DAL?



Riccardo D'Aria

LuchinoTO Profilo | Newbie

Il DAL sarebbe il Data Access Layer.
Nella mia "soluzione" ho tre progetti differenti, ognuno rappresentante uno dei tre livelli di suddivisione:
1. Il DAL, in cui vi sono tutte le classi che lavorano a stretto contatto con i dati. Comunica solamente con lo strato "BLL".
2. Il BLL (Business Logic Layer), che funge da intermediario fra il DAL e lo strato di presentazione (User Interface)
3. Il livello UI (User interface), che contiene le varie form presentate all'utente. Comunica esclusivamente con il BLL.

ridaria Profilo | Expert

Per Ogni strato hai un eseguibile differente dall'altro?


Riccardo D'Aria

LuchinoTO Profilo | Newbie

No, l'eseguibile viene creato solamente dallo "strato" di UI (User Interface). Gli altri due strati (BLL e DAL) creano le DLL a cui l'eseguibile fa riferimento in fase di esecuzione.

ridaria Profilo | Expert

OK e devi far dialogare il le routine con le DLL altrimenti i dati come li vuoi passare?


CIAO
Riccardo D'Aria
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5