Domanda

Ho un modello che contiene una proprietà per un URL di un'immagine:

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

Come si può vedere il tipo di dati è un ImageUrl e ho usesd questo fatto per creare un editor di modelli in Vista / directory condivisa.

Il modello ha solo bisogno di extened il modello predefinito con l'aggiunta di alcuni elementi HTML in più. Non sono sicuro di come fare per questo.

Ho provato specificando il nome del modello quando chiamo gli aiutanti html, ma che non sembra funzionare per me.

Il codice che sto utilizzando è (si noti che questo è all'interno il modello personalizzato):

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

Incase vi state chiedendo Ho preso il nome modello utilizzando il riflettore sulla MVC 3 dll, poi sotto

  

System.Web.Mvc.Html

Ho guardato il contructor per il TemplateHelpers di classe e ho visto questa linea:

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

Saluti per qualsiasi aiuto Tony

Aggiorna

dimenticato di dire. La ragione per cui sto facendo questo è quello di approfittare della convalida discreto che è con MVC 3

È stato utile?

Soluzione

Perché non basta usare @Html.TextBoxFor(m => m) invece di EditorFor nel vostro editor di modelli? :)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top