12

Mi piacerebbe rendere un'area di testo per uno dei campi nel mio modello.Rendering di <textarea /> utilizzando annotazioni di dati

Ho provato ad applicare [DataType(DataType.MultilineText)] al mio campo, ma questo non fa il trucco.

Al momento, sto rendendo l'area di testo manualmente, ma preferirei usare lo Html.EditorFor. Eventuali suggerimenti?

+2

Si dovrebbe inserisci il codice per la proprietà che ha l'annotazione dei dati e il codice per la vista in cui stai usando 'Html.EditorFor' – SOfanatic

risposta

4

perché non utilizzare:

@Html.TextAreaFor(model => model.YourProperty) 

EditorFor aiutante è una sorta di aiuto "intelligente" ed è basando il rendering in base al tipo di fondo della proprietà. Se si desidera applicarlo per il rendering di un tipo di input html specifico, utilizzare altri helper.

+0

Oh sì, non ci ho mai pensato. Grazie! – serlingpa

42

[DataType(DataType.MultilineText)] funziona solo se si utilizza Html.EditorFor assistente nella vostra vista:

Esempio:

Modello

[DataType(DataType.MultilineText)] 
public string Description { get; set; } 

View

Html.EditorFor(m => m.Description) 
+3

Funziona alla grande quando sei pigro, il mio preferito! – Codeman

+1

Penso che questa sia una risposta migliore, più riutilizzabile. – niico

+1

questa dovrebbe essere la risposta accettata –