Estendere Asp.net MVC 3 Editor Modelli
-
27-09-2019 - |
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
Soluzione
Perché non basta usare @Html.TextBoxFor(m => m)
invece di EditorFor
nel vostro editor di modelli? :)