2013-12-18 10 views

risposta

11

Model.Property - come sapete - scriverà semplicemente il valore della proprietà in questione. Html.DisplayFor(m => m.Property), d'altra parte, chiamerà un modello di visualizzazione, che può visualizzare altri markup attorno al valore della proprietà.

Ad esempio, è possibile definire un modello di visualizzazione in questo modo:

@model String 

<div class="property-wrapper"> 
    <p>@Model.Property</p> 
</div> 

I div circostanti saranno resi attorno al valore della proprietà quando si utilizza DisplayFor (se è selezionata la maschera di visualizzazione, che in genere significa che ha un nome di file corrispondente tipo della proprietà, viene specificato nell'attributo UIHint per la proprietà, o è esplicitamente specificato nella chiamata a DisplayFor.

è inoltre possibile accedere ai metadati del modello nei modelli di visualizzazione, il che significa che si può fare qualcosa di simile questo:

<div class="property-label"> 
    @Html.DisplayNameForModel() 
</div> 

<div class="property-value"> 
    @Model.Property 
</div> 

I modelli di visualizzazione offrono un'enorme quantità di flessibilità e riusabilità. Il modo migliore per esplorare questo è iniziare a costruire modelli personalizzati e vedere dove ti porta.

Problemi correlati