1 Titolo Presentazione / Data / Confidenziale / Elaborazione di... Data Access Layer.

Slides:



Advertisements
Presentazioni simili
Introduzione ad XML Mario Arrigoni Neri.
Advertisements

Elaborazione di Franco Grivet Chin
Linguaggi di programmazione
INTRODUZIONE Il framework.NET. Un po di storia Sin dalla prima versione del sistema operativo Windows (1990 circa), nacque la necessità di far comunicare.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità B1 Introduzione alle basi di dati.
Database MySql.
Recupero debito quarto anno Primo incontro
Commenti C#.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità C1 Il linguaggio SQL.
Visual Studio Tools For Office 2005 Fabio Santini. NET Senior Developer Evangelist Microsoft Italy.
Sistema di gestione flussi documentali
Una Introduzione alle Basi di Dati
Java Enterprise Edition (JEE)
UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA
Re-engineering del wrapper XML Schema per il sistema MOMIS
Università degli Studi di Modena e Reggio Emilia
OUTLINE Riprogettazione del database del portale Web della Facoltà di Ingegneria Sviluppo di una applicazione WEB DB : HOMEPAGE DOCENTI Architettura multilivello.
Corso di ingegneria del software
L’uso dei database in azienda
XML Prof. Barbara Pernici Politecnico di Milano. Introduzione a XML.
Analisi dettagliata e design B. Pernici M.G. Fugini AA
Tipo Documento: unità didattica 1 Modulo 14 Compilatore: Antonella Bolzoni Supervisore: Data emissione: Release: Indice: A.Scheda informativa B.Introduzione.
Analisi dettagliata e design B. Pernici. Sommario Analisi dettagliata –Separazione interfaccia, controllo, entita Design –Logical view –Progettazione.
1 IT FOR BUSINESS AND FINANCE ACCESS INTRODUCTION.
IL PATRIMONIO DI DATI - LE BASI DI DATI. Il patrimonio dei dati Il valore del patrimonio di dati: –Capacità di rispondere alle esigenze informative di.
Corso di Informatica (Basi di Dati)
Perché.Net e non più COM/DCOM ? Superamento dei problemi di COM: Richiede una infrastruttura "non semplice" da ogni applicazione (ad esempio Class Factory.
Basi di dati. Vantaggi degli archivi digitali Risparmio di spazio: sono facilmente trasferibili e duplicabili Risparmio di tempo: si può accedere ai dati.
Basi di dati Università Degli Studi Parthenope di Napoli
XML e la generazione di cataloghi multimediali F. Garzotto, L. Mainetti, P. Paolini Politecnico di Milano HOC - Hypermedia Open Center Dipartimento di.
Progettazione di una base di dati
1 Titolo Presentazione / Data / Confidenziale / Elaborazione di... ASP. Net Web Part e controlli di login Elaborazione di Franco Grivet Chin.
Introduzione ad ASP.net
Struts. Framework open source per lo sviluppo di applicazioni web su piattaforma J2EE. Progetto inizialmente sviluppato come sotto-progetto di Apache.
Architettura Java/J2EE
1 Titolo Presentazione / Data / Confidenziale / Elaborazione di... ASP. Net View State e controlli Elaborazione di Franco Grivet Chin.
C# LE BASI 2007 Prima lezione - Introduzione.
Ing. Enrico Lecchini BetaTre S.r.l.
Fare clic per modificare lo stile del titolo Fare clic per modificare stili del testo dello schema – Secondo livello Terzo livello – Quarto livello » Quinto.
ACCESS Introduzione Una delle necessità più importanti in informatica è la gestione di grandi quantità di dati. I dati possono essere memorizzati.
La tecnologia CWM Alessandro Lorenzi A.A.2002/2003.
Il modello di riferimento OSI
Sistemi Informativi sul Web
14/06/2008 – Matteo Baglini Mail: Blog:
IMPLEMENTAZIONE TECNOLOGIE:HIBERNATE & JAVA RMI.
IMPLEMENTAZIONE TECNOLOGIE:HIBERNATE & JAVA RMI.
Dati e DBMS DBMS relazionali SQL Progettazione di una base di dati Programma del Corso.
DB- Sistemi Informativi
Hyper-Text Mark-Up Language
Corso di Visual Basic 6.0 OBBIETTIVI
EDIFACT Framework Architecture Acceleratore di soluzioni basate su EDIFACT
N4N Platform Architecture PA Inside outlook.
Lezione 1 Panoramica sui paradigmi di programmazione
I DBMS BASI DI DATI (DATABASE) Insieme organizzato di dati utilizzati
MODULO 01 Unità didattica 04
INTERFACCE Schede elettroniche che permettono al calcolatore di comunicare con le periferiche, che possono essere progettate e costruite in modo molto.
Eprogram informatica V anno. ASP.NET Introduzione ASP.NET (Active Server Page) è il linguaggio che, sfruttando la tecnologia.NET, permette di: -scrivere.
Analisi dettagliata e design
Dati e DBMS DBMS relazionali SQL Progettazione di un DBMS Normalizzazione Programma del Corso di Basi di Dati.
Real World data access layers DataSet vs. Custom entities Pierre Greborio Software Architect – PEWay SrL Microsoft MVP – Solutions Architect.
Fondamenti di Informatica 2 Ingegneria Informatica Docente: Giovanni Macchia a.a
TW Asp - Active Server Pages Nicola Gessa. TW Nicola Gessa Introduzione n Con l’acronimo ASP (Active Server Pages) si identifica NON un linguaggio di.
Ingegneria del software Modulo 1 -Introduzione al processo software Unità didattica 4 -Progettazione del software Ernesto Damiani Università degli Studi.
CORSO DI ALFABETIZZAZIONE INFORMATICA ORIENTATO A INTERNET E ALLA PIATTAFORMA NOVARETE DIREZIONE DIDATTICA VI CIRCOLO NOVARA USABILITA’ E ACCESSIBILITA’
PROGETTAZIONE DI BASE DI DATI Metodologie e modelli.
ICT e Sistemi informativi Aziendali Materiale di supporto alla didattica.
Le basi di dati.
Insegnamento “Tecniche audiovisive” Corso di Laurea in Ingegneria delle Comunicazioni Yahoo! Widget TV Marco Teodori Assistente Ricercatore - Fondazione.
Capital GT. L’ambiente di sviluppo Capital 001. Highlights Operativi Capital GT GT è una tecnologia che permette di personalizzare Capital. Si basa su.
Progetto WELL-FIR Manuale Utente del Web GIS Versione 0.1.
Transcript della presentazione:

1 Titolo Presentazione / Data / Confidenziale / Elaborazione di... Data Access Layer

2 Titolo Presentazione / Data / Confidenziale / Elaborazione di... Un data access layer (DAL) è un layer di un programma (uno strato software, in OOP potrebbe essere un insieme di classi) avente il compito di semplificare laccesso ai dati contenuti in uno storage (un contenitore) di qualche tipo, come ad esempio un database relazionale In una logica MVC, permette di realizzare il disaccoppiamento tra quelli che sono i layers di un programma atti a esposizione dei dati/ controllo del flusso applicativo ( View/Controller) da una parte ed appunto, il layer per laccesso ai dati dallaltro Un DAL nasce dallastrazione cui viene naturalmente sottoposta la funzionalità di accesso ai dati, nella sua veste reale, in quanto componente largamente ripetuta in seno ad uno sviluppo software Nello specifico della piattaforma ASP.NET, esempi di data access layers standard vengono forniti dallEntity framework e dai DataSets. La piattaforma mette inoltre a disposizione strumenti di semplice utilizzo per lintegrazione dei Data Consumers standard con DALs custom

3 Titolo Presentazione / Data / Confidenziale / Elaborazione di... Il controllo ObjectDataSource permette lintegrazione dichiarativa tra i Data Consumers standard e DALs custom; esempio di data access layer custom è una classe C# esponente metodi per laccesso ai dati LObjectDataSource mappa i metodi del DataAccessLayer e può essere richiamato da un Consumer standard ObjectDataSource

4 Titolo Presentazione / Data / Confidenziale / Elaborazione di... Esempio di Consumer detailsView e del relativo controllo ObjectDataSource di cui fruisce ObjectDataSource

5 Titolo Presentazione / Data / Confidenziale / Elaborazione di... Esempio di Consumer GridView che fruisce di un controllo ObjectDataSource ObjectDataSource

6 Titolo Presentazione / Data / Confidenziale / Elaborazione di... ADO.Net Entity Framework

7 Titolo Presentazione / Data / Confidenziale / Elaborazione di... L Entity Framework fa parte di quella famiglia di tecnologie per laccesso ai dati nota con il nome di ADO.NET E un framework afferente alla famiglia dei cosiddetti Object Relational Mapper (ORM) che aiuta gli sviluppatori.NET nelloperazione di snellimento di quello che è il codice per realizzare laccesso ai dati (codice che spesso e volentieri risulta essere abbondante e ridondante). Permette la creazione di un cosiddetto Entity Data Model (EDM. Un Entity Data Model mappa strutture dati e relazioni tra esse intercorrenti; il motore dellORM gestisce generiche operazioni di accesso ai dati conformemente alle strutture mappate in seno allEDM stesso. Permette il disaccoppiamento tra lo strato di accesso ai dati ed il cosiddetto strato di presentation Lambiente di sviluppo Visual Studio 2010 espone tools per il supporto alla creazione e modellizzazione dellEDM, riducendo ulteriormente quanto ad onere dello sviluppatore/analista

8 Titolo Presentazione / Data / Confidenziale / Elaborazione di... Creare un Entity Data Model con Visual Studio Si può utilizzare il wizard ADO.NET Entity Data Model generazione di un file [MyModel].edmx generazione di un file [MyModel.designer.cs] aggiunta di riferimenti (Es: System.Data.Entity) Modifica visuale dell Entity Data Model apertura in Visual Studio del file [MyModel].edmx ed utilizzo degli oggetti della toolbox Entity Framework apertura in Visual Studio del file [MyModel].edmx e modifica del modello a partire da un database esistente Entity Data Model

9 Titolo Presentazione / Data / Confidenziale / Elaborazione di... Generazione Entity Data Model da database Modellodi un intero database: tabelle (comprensive di vincoli, chiavi e relazioni), viste, stored procedures Modello comprensivo di singoli oggetti del data base A fronte di oggetti quali tabelle/viste vengono generate entità nel Data Model; le entità mappano le corrispondenti strutture sulla base dati Entity Data Model

10 Titolo Presentazione / Data / Confidenziale / Elaborazione di... Qualora gli oggetti della base dati siano tra loro relazionati, le relazioni vengono mappate in seno al Data Model attraverso apposite entità di relazione Entity Data Model

11 Titolo Presentazione / Data / Confidenziale / Elaborazione di... Modifica del modello in modalità visuale con editor di Visual Studio Comporta lautomatizzazione delle modifiche ai sorgenti del modello [MyModel].edmx e [MyModel.designer.cs] [MyModel].edmx file xml descrittore del modello: ne espone la struttura attraverso una serie di tags xml (definiti da una opportuna grammatica) [MyModel.designer.cs] file di codice C#, espone metodi del Data Access Layer I files edmx e designer.cs vengono utilizzati dal motore dellEF per la gestione delle operazioni di accesso ai dati Entity Data Model

12 Titolo Presentazione / Data / Confidenziale / Elaborazione di... Un file.edmx è un file XML che definisce un modello concettuale, uno storage model, ed una mappa tra i due. Un file.edmx contiene anche informazioni che sono usate dallADO.NET Entity Data Model Designer (Entity Designer) per renderizzare graficamente il modello. La best-practice di creazione di un file.edmx prevede luso del già citato Entity Data Model Wizard Contenuto di un file.edmx Runtime Content (edmx:Runtime) edmx:StorageModels edmx:ConceptualModels edmx:Mappings Designer Content (edmx:Designer) edmx:Connection edmx:Options edmx:Diagrams.edmx

13 Titolo Presentazione / Data / Confidenziale / Elaborazione di... Runtime Content (edmx:Runtime) : questa sezione contiene informazioni che sono usate per generare il modello e mappare i file delle applicazioni che utilizzano lentity Framework edmx:StorageModels:questa sezione descrive lo schema(la struttura) del database target ed è scritta in linguaggio SSDL (Storage Schema Definition Language) edmx:ConceptualModels: Questa sezione definisce entità ed associazioni tra entità nel dominio applicativo. Questa sezione è scritta in linguaggio CSDL (Conceptual Storage definition Language) edmx:Mappings: Questa sezione descrive il mapping tra il modello concettualeed il database target ed è scritto in linguaggio MSL (Mapping Specification Language) Designer Content (edmx:Designer): questa sezione contiene informazioni utilizzate dall Entity Designer per renderizzare un modello concettuale graficamente edmx:Connection: questa sezione descrive le proprietà del modello concettuale che si riflettono sulla stringa di connessione edmx:Options: questa sezione descrive proprietà opzionali del modello concettuale edmx:Diagrams: questa sezione contiene informazioni usate dall Entity Designer per renderizzare graficamente il modello concettuale.edmx

14 Titolo Presentazione / Data / Confidenziale / Elaborazione di... Un esempio di file.edmx (estratto).edmx

15 Titolo Presentazione / Data / Confidenziale / Elaborazione di... Per richiamare il DataModel e funzionalità ad esso associate, in un documento.aspx è possibile utilizzare il controllo EntityDataSource Simile al controllo SqlDataSource, è specificatamente pensato per interagire con una sorgente dati gestita attraverso lEntityFramework Può essere esposto dichiarativamente in un documento.aspx attraverso un tag e fungere da intermediario tra il DAL (rappresentato dallEntity Framework) e i controlli di esposizione dati (layer View) Può essere richiamato da un qualsiasi controllo consumer, sia esso ad esempio una GridView o una Datalist EntityDataSource