Una delle nuove funzionalità di ASP.NET MVC 2 Anteprima 1 è il supporto per il concetto di modelli di editor e modelli di visualizzazione che consentono di predefinire come un dato oggetto sarà reso per la visualizzazione o la modifica con una semplice aiutante HTML:ASP.NET MVC 2 - Quando utilizzare i modelli rispetto a quando utilizzare le viste parziali
<%=Html.EditorFor(customer => customer) %>
<%=Html.DisplayFor(customer => customer) %>
questo è piuttosto fresco, ma io non vedo la differenza tra questo e una vista parziale che serve allo stesso scopo . Inoltre, negli esempi ho visto che i Template Editor non contengono i tag del modulo e, nel caso in cui avessi bisogno di fornire alcune funzionalità lato client a un determinato editor (ad esempio attraverso jQuery), non riesco a posizionarlo in modo sicuro il modello perché non avrò un handle statico sul modulo a cui aggiungo la logica nel client. Nell'applicazione a cui sto lavorando ho una combinazione di modelli di editor e viste parziali che eseguo il rendering per modificare il contenuto. A seconda della complessità del modulo sto creando un editor perché ho scelto un approccio rispetto all'altro, ma questo naturalmente aggiunge un livello indesiderato di incoerenza all'applicazione.
Perché utilizzare un modello su una vista parziale o viceversa? Inoltre, quando si utilizza un modello di editor, qual è il modo ideale per aggiungere la logica lato client all'editor senza copiarlo in ogni vista che utilizza quell'editor?
Ho letto il post di Mr. Gu e spiega che l'EditorFor può essere utilizzato sia per i singoli campi e gli oggetti interi. Mi riferisco a quest'ultimo caso nel mio scenario sopra. –
Oh okay. Dichiara anche lo scopo di questo nel post: "Per impostazione predefinita eseguirà un loop sulle proprietà pubbliche dell'oggetto e genererà un elemento
Quindi dire che non ho bisogno di definire esplicitamente un modello quando chiamo EditorFor (SomeObject) finché non ho bisogno di fare qualcosa di speciale come gestire i campi personalizzati? –