2011-11-19 24 views
39

¿Alguien me puede explicar cuál es el uso del atributo UIHint en MVC? Porqué necesitamos esto. y cuándo y cómo usarlo. Gracias¿Qué es el uso del atributo UIHint en MVC

+4

¿Qué has leído al respecto hasta ahora que fue confuso? ¿Qué has intentado? Este no es un buen lugar para pedir información que ya está en la documentación. –

+3

UIHint es una característica muy importante y lamentablemente, la documentación de esto es pobre y no hay muchos artículos claros o ejemplos en Internet. –

Respuesta

84

UIHintAttribute Especifica la plantilla o el control de usuario que Dynamic Data usa para mostrar un campo de datos.

Esta es la descripción de MSDN de UIHintAttribute. Primero se introdujo para aplicaciones de datos dinámicos y ASP.NET MVC también lo adaptó.

Si anotar una propiedad con el atributo UIHint y utilizar EditorFor o DisplayFor dentro de sus puntos de vista, el marco ASP.NET MVC buscará la plantilla especificada que ha especificado a través UIHintAttribute. Los directorios que busca es:

Para EditorFor:

~/views/Común/EditorTemplates

~/Vistas/Controller_Name/EditorTemplates

Para DisplayFor:

~/Views/Shared/DisplayTemplates

~/views/Controller_Name/DisplayTemplates

Si se encuentra en una zona, que se aplica a su área como la de arriba también.

Aquí está la muestra de uso:

public class Person { 

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

framework MVC buscará vista parcial llamado poo bajo los directorios especificados si se intenta dar salida a la propiedad del modelo con EditorFor o DisplayFor, como a continuación:

@model MyApp.Models.Person 

<h2>My Person</h2> 

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

¿No debería ser '@ Html.DisplayFor (m => m.Name)' al final? – ChrFin

+7

¿Podría darnos un ejemplo de cómo crearía la plantilla de visualización "Poo"? – ZiGiUs

+1

Sí, por favor demostrar cómo crear caca: J – xr280xr

Cuestiones relacionadas