Los trabajos solución anterior, pero si tiene varias instancias de ese campo, sería más fácil de configurar en el modelo o la vista del modelo. Tenga cuidado al modificar el modelo real porque pueden ser volátiles al actualizar.
Ejemplo: En el modelo de modelo o vista.
[DisplayName("Notes")]
[MaxLength(500, ErrorMessage="Maximum length of notes field is 500 characters...")]
[DataType(DataType.MultilineText)]
public string Notes { get; set; }
Para que valide en el envío, necesitará lo siguiente en su web.config.
<add key="ClientValidationEnabled" value="true" />
<add key="UnobtrusiveJavaScriptEnabled" value="true" />
Asegúrese de que hace referencia a los archivos JS validación en algún lugar, preferiblemente en Común/_Layout o en la propia página ...
<script src="~/Scripts/jquery.validate.min.js"></script>
<script src="~/Scripts/jquery.validate.unobtrusive.min.js"></script>
Por último, asegúrese de que incluye el mensaje de validación en el cshtml.
@Html.EditorFor(model => model.Notes, new { htmlAttributes = new { @class = "form-control", rows = "5", @placeholder = "Notes", title = "Enter any notes..." } })
@Html.ValidationMessageFor(model => model.Notes, "", new { @class = "text-danger" })
genere la solución y prueba. Espero que esto ayude a cualquier otra persona a buscar una solución.
¡Increíble! Realmente lo arreglaron después de la versión Beta. Aun así, descubrí que solo la segunda línea funcionaba en su solución. Además, la solución solo funciona para TextBoxFor y no para EditorFor, aunque por ahora estoy de acuerdo con eso. – arame3333
Puede pasar todos los atributos html, pero recuerde que tienen que ser válidos para un elemento html específico generado por html helper, en este caso es una entrada. –
El encabezado del asunto dice EditorFor - la respuesta dice TextBoxFor. FYI - HtmlAttributes extra no funciona con EditorFor a menos que usted decore la propiedad usando System.ComponentModel.DataAnnotations "[StringLength (5, ErrorMessage =" Debe tener 5 caracteres o menos ")]", de lo contrario debe cambiar a TextBoxFor y ENTONCES puede usar los HtmlAttributes adicionales mencionados en la respuesta. –