2011-11-19 13 views
39

Qualcuno può spiegarmi a cosa serve l'attributo UIHint in MVC. Perché ne abbiamo bisogno. e quando e come usare. GrazieChe cosa si intende per l'attributo UIHint in MVC

+4

Cosa hai letto fino ad ora che ti ha confuso? Che cosa hai provato? Questo non è un buon posto per chiedere informazioni che sono già nella documentazione. –

+3

UIHint è una caratteristica molto importante e purtroppo la documentazione di questo è scarsa e non ci sono articoli o esempi molto chiari in internet. –

risposta

84

UIHintAttribute Specifica il modello o il controllo utente che Dynamic Data utilizza per visualizzare un campo dati.

Questa è la descrizione MSDN di UIHintAttribute. In primo luogo, è stato introdotto per le applicazioni Dynamic Data e anche ASP.NET MVC lo ha adattato.

Se si annota una proprietà con l'attributo UIHint e utilizzare EditorFor o DisplayFor dentro le vostre opinioni, framework ASP.NET MVC cercherà il modello specificato che si è specificato attraverso UIHintAttribute. Le directory viene cercato è:

Per EditorFor:

~/Vista/shared/EditorTemplates

~/Vista/controller_name/EditorTemplates

Per DisplayFor:

~/Views/Shared/DisplayTemplates

~/Vista/controller_name/DisplayTemplates

Se siete su una superficie, si applica alla vostra zona come sopra pure.

Ecco l'esempio di utilizzo:

public class Person { 

    [UIHint("Poo")] 
    public string Name { get; set; } 
} 

framework MVC cercherà vista parziale di nome poo sotto le directory specificate se si tenta di uscita alla proprietà modello con EditorFor o DisplayFor come di seguito:

@model MyApp.Models.Person 

<h2>My Person</h2> 

@Html.DisplayFor(m => m.Name) 
+1

Non dovrebbe essere '@ Html.DisplayFor (m => m.Name)' alla fine? – ChrFin

+7

Potresti fornire un esempio di come si creerebbe il modello di visualizzazione "Poo"? – ZiGiUs

+1

Sì, dimostrare come creare poo: J – xr280xr

Problemi correlati