asp.net mvc 3 - trasportare i dati nel model
Post on 22-Apr-2015
1.153 Views
Preview:
DESCRIPTION
TRANSCRIPT
ASP.NET
Sviluppo applicazioni web e linguaggio HTML
LEZIONE 06
Model View Controller
Model
Che cos’è il Model?
Un insieme di classi che
modellano le entità del
dominio applicativo
Domain Model
Solo questo?
… e poi trasporta
le informazioni
dall’interfaccia utente al
database e viceversa
Per realizzare tutto questo
cosa dobbiamo fare?
Dobbiamo …
Dobbiamo …
1 Creare un controller
Dobbiamo …
Aggiungere le action per
creare, modificare e
cancellare
Creare un controller
2
Dobbiamo …
Aggiungere action per
creare, modificare e
cancellare
Creare un controller
3 Creare le viste
Dobbiamo …
Aggiungere action per
creare, modificare e
cancellare
Creare un controller
4
Creare le viste
Aggiungere la logica di
persistenza sul database
In una parola …
Ma come facciamo a
ottenere informazioni
dal client?
In HTML è possibile grazie
al tag form
Il form è un
contenitore di
elementi di
tipo “input”
Tra questi il
pulsante di tipo
submit permette
di inviare i dati
al server
http://wufoo.com/gallery/templat
es/forms/vendor-contact-
information-form/
Quello che si trova all’interno
del tag form al submit viene
impacchettato e spedito al
server in una richiesta POST
Nell’action del controller
leggiamo le informazioni
dalla Request.Form
ma c’è un modo migliore
per farlo …
Se i nomi dei campi del
form riflettono i nomi delle
proprietà …
… possiamo usare lo
stesso codice per
valorizzare il model con i
dati dell’utente!
In ASP.NET c’è una classe
che lo fa per noi …
<form action=“/post/edit/”>
<input type=“hidden” … name=“PostId” />
<input type=“text” … name=“Title”/>
<textarea name=“Body” ... ></textarea>
…
</form>
…
…
Nel compilare la form
possiamo farci aiutare
dagli HtmlHelper
Html.EditorFor
Aggiungiamo al
blog la possibilità
di lasciare dei
commenti sui post
HtmlHelper perché
• Perché ci permettono di sfruttare le
caratteristiche del model
• Facilitano la scrittura dell’HTML
• Aiutano nella validazione degli input
degli utenti
HtmlHelper quando
• Quando il motivo principale è evitare
di scrivere codice HTML
Cosa può succedere se
non controlliamo i dati
inseriti dall’utente?
La validazione degli input
può avvenire:
• Lato server [obbligatorio]
• Lato client [opzionale]
• Su entrambi [consigliato]
Per la validazione ASP.NET
MVC3 si avvale di:
• Data Annotations
• Validation Helpers
Sono attributi che vengono
associati alle proprietà di
una classe del model
Data Annotations
Sono attributi che vengono
associati alle proprietà di
una classe del model
e descrivono quale insieme
di valori sono accettati
Data Annotations
Data Annotations Se poi ci sono errori …
Visualizzano le informazioni
sugli errori di validazione
Validation Helpers
continua …
Slide 6: http://www.flickr.com/photos/14497446@N02/5212627246/
Credits Le immagini contenute in questa presentazione
hanno licenza Creative Commons
Thank You
MANUEL SCAPOLAN website: www.manuelscapolan.it twitter: manuelscapolan e-mail: info@manuelscapolan.it
top related