2011-11-22 36 views
8

Usando los dos métodos siguientes en mi vista y edito las vistas, Se ejecutan fuera del modelo y generan automáticamente una lista de los campos con etiquetas, para mostrar/editar.ASP.NET MVC3: ¿Cómo puedo ocultar campos usando Html.DisplayForModel y Html.EditorForModel

@Html.EditorForModel() 

    @Html.DisplayForModel() 

El problema es que se muestren todos los campos .. Incluyendo el campo ID, que es malo cuando se trata de edición, ya que no se debe cambiar.

Entonces, ¿cómo puedo ocultar ciertos campos en el modelo. (Sin quitar los campos del modelo.)

Respuesta

12

Puede utilizar el Scaffold Atributo

[ScaffoldColumn(false)] 
public int Id {get;set;} 

Y si también desea que el aglutinante modelo no toca el campo ID (para evitar el exceso de colocación de anuncios) se puede establecer el ReadOnly -Atributo también.

[ReadOnly(true)] 
[ScaffoldColumn(false)] 
public int Id {get;set;} 
+0

Funciona como un encanto. Incluso a través de mi biblioteca .net. Aclamaciones. – Doomsknight