Università degli Studi di Modena e Reggio Emilia Università degli Studi di Modena e Reggio Emilia Facoltà di Scienze Matematiche, Fisiche e Naturali Facoltà di Scienze Matematiche, Fisiche e Naturali
Corso di Laurea in Informatica Corso di Laurea in Informatica
Utilizzo di ASP.NET e SQL SERVER 2008 per Utilizzo di ASP.NET e SQL SERVER 2008 per
lo Sviluppo di Pagine Web Dinamiche lo Sviluppo di Pagine Web Dinamiche
SIGNI Ferdinand SIGNI Ferdinand
Relatore:
Relatore:
Prof. Riccardo Martoglia Prof. Riccardo Martoglia
Anno Accademico 2009/2010
Anno Accademico 2009/2010 1
Introduzione
• Studio e reingegnerizazione delle funzionalità del sito Information Systems Group (http://www.isgroup.unimo.it)
• Sito ideato e realizzato con le tecnologie ASP(VBscript), HTML, JavaScript e MS Access 2000 + IIS
Limiti di ASP
Modello d’elaborazione basato sull’interpretazione Codice inline e aspetto grafico mescolato con il contenuto
Non integra nativamente il DBMS SQL Server
Strumenti di sviluppo quasi inesistente
Linguaggio di programmazione potente e flessibile pero troppo orientato al codice e quindi non uno strumento di sviluppo del codice per l’imprese
• Necessità di migrare il sistema verso nuove tecnologie Microsoft che offrono piu di flessibilità d’opportunità e di prodottività
• Realizzazione del nuovo sistema utilizando ASP.Net e SQL Server
2008
Problematiche affrontate nella tesi
• Analisi del caso di studio
• Presentazione di ASP.Net
• Progetto
• Implementazione
3
Analisi del Caso di studi Information System Group
• L’ISGroup è un gruppo di ricercatori che ha sede presso il Dipartimento di Ingegneria
dell’Informazione (DII) di Modena e che si
occupa di design e sviluppo di nuovi sistemi, algoritmi e strutture dati per l'accesso e la
gestione dell’Informazione
Sezioni principali(pagine dinamiche) Sezioni principali(pagine dinamiche)
• Projects:
sono descritti in dettaglio i Topic Of Interest studiati e i progetti a cui il gruppo partecipa o ha partecipato
• Publications:
vengono elencate, raggruppate per anno o topic, le pubblicazioni scientifiche realizzate dai vari membri del gruppo
• Thesis:
sono elencate le tesi proposte e una serie di
tesi pubblicate
Framework .Net
Modello unificato
5
Commun Language Runtime
Common Language Infrastructure (CLI)
Base Class Library ADO.NET:Dati e XML Web Forms
(ASP.NET) Web Services
Mobile Forms Windows Forms Common Language Specification
VB C++ C# J# …..
Gestione della Memoria Gestione della Sicurezza Gestione della Compilazione dinamica degli elementi
Manipolazione dei fili Acesso agli Input/Output
Manipolazione del RDBMS e XML Sviluppare applicazioni Web e services web,
pocket pc, Rich client Specificazioni per Sviluppare linguagi .NET
Componenti di ASP.NET
User
Management Customization Config Custom
Services Master
Page
Themes Skins
Internationa
lization Compilation Data
Controls
Login Controls
Webpart Controls
Custom Controls
API Services Pages Framework Controls Manutenzione facile(codice behind, separazione del codice e del contenuto) Facilità di implementazione,scalabilità, affidabilità, sicurezza
Scelta del linguaggio
Strumenti:Visual studio, visual web developer, web matrix...
Architettura di ASP.NET
Vantaggi di ASP.NET
Schema E-R Schema E-R
AUTORI ( ID, Nome, Search ) PUB-AUT ( ID, Pub, Autore ) AK: Pub, Autore
FK: Pub REFERENCES Pubblicazioni FK: Autore REFERENCES Autori
PUBBLICAZIONI ( ID, Titolo, Libro, Abbr, Pag-Iniz, Pag- Fin, Luogo, Year, Month, Tipo, Topic, PDFLink, Abstract, BibTeX )
FK: Tipo REFERENCES Tipo
FK: Topic REFERENCES TopicOfInterest KEYWORDS ( ID, Keyword )
PUB-KEY ( ID, Pub, Keyword ) AK: Pub, Keyword
FK: Pub REFERENCES Pubblicazioni FK: Keyword REFERENCES Keywords TIPO ( ID, Tipo )
TOPICOFINTEREST ( ID, Titolo, Descrizione, PaginaWeb, Search )
PROG-PUB ( ID, Prog, Pub ) AK: Prog, Pub
FK: Prog REFERENCES Progetti FK: Pub REFERENCES Pubblicazioni
PROGETTI ( ID, Titolo, Descrizione, PaginaWeb, Tipo, Inizio, Fine )
PROTOTIPI ( ID, Nome, PaginaWeb, Topic. Progetto ) FK: Topic REFERENCES TopicOfInterest
FK: Progetto REFERENCES Progetti
Schema E-R Logico Schema E-R Logico
7
Progetto
Ambiente di sviluppo
• Visual Web Developer 2008 Express Edition SP1
• SQL Server 2008 Express SP1
• SSMA for Access V5.0
• Windows Vista Home Premium SP2
Area grafica del sito:La Master Page
Fogli di stili CSS
File .skin per gestire l’aspetto dei controlli del sito File .xml per banner informativi
Ereditarietà della master page e definizione del proprio contenuto dei figli attraveso il controllo ASP:ContentPlaceHolder
Implementazione
Implementazione:
La master page
9
Blocco
Intestazione
Blocco pagina
Blocco pie di pagina
Implementazione Pagina Default.aspx
Intestazione
Menu di destra e contenuto della
pagina
Pie di pagina
Implementazione Pagina Projects.aspx
11
Stringa di connessione (Web.config)
Datasource +dropdownlist (data binding)
Presentazione dei risultati nella
datalist
1.Research Interest and Projects
2.Past research Interest
3. National and European funded projects
4. Past projects
Implementazione
Pagina Projects.aspx
Pagina Projects.aspx
Implementazione
Pagina Publications.aspx
13
Criteri di ricerca 3 dropdownlist 1.Search Form
Search Form ottenuto
Implementazione
Pagina Publications.aspx
Risultati della ricerca:
Utilizzo della Procedura come datasource
Trasmissione della datasource alla datalist
Elaborazione del risultato attraverso la procedura SearchPublic ation
Implementazione
Pagina Publications.aspx Pagina Publications.aspx
1.Search Form
15
Ricerca dei Publicazioni a
seconda dell’ Autore, del Topic Possibilità di raggrupare per anno o per topic.
A default tutti i pubblicazioni del gruppo secondo l’anno o topic.
Implementazione
Pagina Publications.aspx
Pagina Publications.aspx
Implementazione Pagina Thesis.aspx Pagina Thesis.aspx
17
Conclusione Gli obiettivi ragiunti
È stato fatto un confronto tra ASP e ASP.Net tecnologie Microsoft per capire quali sono le differenze
È stato fatto un confronto fra ADO e ADO.Net
È stato utilizzato ASP.NET e SQL Server 2008 per sviluppare pagine dinamiche del sito Web del gruppo ISGroup
È stato mostrato che lo sviluppo di un sito Web va fatto meglio con ASP.Net accoppiato a SQL Server che ASP e Access
Sviluppi futuri
Utilizzare AJAX per megliorare il lato Client
Utilizzare AJAX per velocizzare di più le pagine del sito aggiornando soltanto la parte della pagina dove c'è la necessità non l'intera pagina.
The End The End
19