Pregunta

Tengo un modelo que contiene una propiedad para una URL de la imagen:

[Required]
[DataType(DataType.ImageUrl)]
public string Logo { get; set; }

Como se puede ver el tipo de datos es un ImageUrl y no tengo usesd este hecho para crear un editor de plantillas de Vistas / directorio compartido.

La plantilla sólo necesita extened la plantilla por defecto añadiendo algunos elementos HTML adicional. No estoy seguro de cómo hacer esto.

He intentado especificar el nombre de la plantilla cuando llamo a los ayudantes HTML, pero eso no parece funcionar para mí.

El código que estoy usando es (nota que esto es dentro de la plantilla personalizada):

@Html.EditorFor(model => model, "string")

En caso que usted se está preguntando me dieron el nombre de la plantilla mediante el uso de reflector en el DLL MVC 3, a continuación, en

  

System.Web.Mvc.Html

Me miraba el contructor para el TemplateHelpers clase y vio esta línea:

dictionary3.Add(typeof(string).Name, new Func<HtmlHelper, string>(DefaultEditorTemplates.StringTemplate));

Saludos para cualquier ayuda Tony

Actualizar

Se olvidó de mencionar. La razón por la que estoy haciendo esto es tomar ventaja de la validación discreta que está con MVC 3

¿Fue útil?

Solución

¿Por qué no sólo tiene que utilizar en lugar de @Html.TextBoxFor(m => m) EditorFor en su editor de plantillas? :)

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top