Newsgroup: it.comp.programmare.win32
Titolo: ADO.NET e C#

ciao
sono arrivato al capitolo 
ADO.NET
 con C# 2008
benche' da visuale è possibile impostare un dataset con datagrid, ho 
come l'impressione che utilizzando solo gli strumenti visuali sia un po' 
limitativo....
voi come lavorate di solito?
Grazie per i consigli.
Buon lavoro

 voi come lavorate di solito?
Concordo, lo strumento visuale è genericamente adatto agli scenari RAD, 
cioè applicazioni che non arrivano a una versione 2.
Dai wizard però si impara. Loro generano codice, tu lo guardi e capisci 
cosa fanno. Da qui puoi partire e fare due cose:
- scrivere da zero il tuo codice sulla falsa riga di quello che ha 
generato il wizard
- estendere le partial class generate dal wizard, superando così alcuni 
dei limiti.
Tieni presente che lo stesso Dataset è indicato per scenari RAD. In una 
applicazione non RAD io non uso mai un Dataset ma mi costruisco un 
object model mio.
Se vuoi vedere questo aspetto e passare al "lato oscuro" :) puoi 
leggere il documento che ho pubblicato nella home page della mia 
collection:
http://www.codeplex.com/rafcollection
La rafcollection consiste in una collection che offre molte delle 
caratteristiche del dataset (acceptchanges, rejectchanges, ...) ma con 
le tue classi per i motivi detti sopra.
Perseguendo questa strada non hai più il supporto del dataadapter 
quindi le alternative per il caricamento dei dati e l'aggiornamento del 
db sono:
- fare tutto a manina
- usare un OR/M
- usare Linq2SQL ... io preferisco questa strada.
Mi fermo se no sbrodolo in un discorso per cui ci vuole una giornata :)
-- 
Raffaele Rialdi
Microsoft .NET MVP 
http://mvp.support.microsoft.com
 -
http://italy.mvps.org
 UGIdotNET - User Group Italiano .NET
http://www.ugidotnet.org
 Weblog: 
http://blogs.ugidotnet.org/raffaele

Raffaele Rialdi [MVP] ha scritto:

grazie!
p.s. utilizzando mysql non è possibile utilizzare la creazione guidata 
origine dati e dataset?
buon lavoro!

 buon lavoro!
Anche a te, ciao


- usare un OR/M
brrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr....

Andrea Laforgia ha scritto:

scusate che vor di' OR/M?
grazie

scusate che vor di' OR/M?
Object-Relational-Mapping.

 brrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr....
Tutti i più grossi progetti enterprise usano gli OR/M.
eBay si è scritto il proprio OR/M.
Hibernate (java) e nHibernate (.net) sono forse i più famosi ma ce ne 
sono dozzine di altri e tutti usati in progetti di enorme successo.
Il successo degli OR/M è un dato di fatto supportato da architetture 
vincenti, non opinioni o preferenze.
Parlo senza polemiche, si intende :)


 dai principi di design di OOP.
Non è detto che i principi di design di OOP siano i migliori quando si ha
a che fare con i dati e difatti in moltissimi preferiscono non passare per
degli ORM (esiste una grande massa di persone che critica questo
approccio, vedi la object-relational impedance mismatch). Quello che dici
nel tuo messaggio e cioè che tutti i progetti di successo usano ORM non
significa nulla. Bisogna vedere se sono divenuti progetti di successo
*grazie* agli ORM e secondo me non è così; E' l'idea alla base a farne
progetti di successo, non lo strumento specifico utilizzato. Secondo me
gli ORM costringono a una visione dei dati che a volte può essere troppo
"ingessata".
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 "ingessata".
La pluggabilità dell'applicazione si sposa fantasticamente con le 
metodologie a cui faccio riferimento.
Ai Community Days uno dei punti centrali è stata la discussione sui 
framework di IoC (
http://en.wikipedia.org/wiki/Inversion_of_control
) 
che danno una estrema flessibilità (pipeline, addin, ...).
Mi spiace ma l'ingessatura dipende solo da chi progetta e non dalla 
metodologia.
