Il modo migliore per controllare la serializzazione dei dati dei moduli pubblicati [chiuso]

-2

Sto lavorando su un progetto MVC ASP.NET. Ho un modulo che è strongmente digitato. È considerata buona pratica aggiungere gli attributi di serializzazione allo stesso modello di vista per controllare come i dati vengono serializzati una volta che sono stati inviati al server. Ad esempio, ho molte proprietà che sono strettamente utilizzate per mostrare / nascondere i componenti dell'interfaccia utente. Posso aggiungere [XmlIgnoreAttribute] a ciascuna di queste proprietà nel modello di visualizzazione in modo che non vengano serializzate o è preferibile creare una classe completamente difficile per la serializzazione.

    
posta CodeMonkey 02.12.2015 - 04:04
fonte

1 risposta

0

Concettualmente, considera la visualizzazione e l'aggiornamento. Sono cose molto diverse. L'uso di un distinto ViewModel e UpdateModel è ragionevole. ViewModel contiene tutto ciò che la vista deve fare il suo lavoro (che non ha già). In quanto tale, potrebbe contenere opzioni di selezione, colori di sfondo, percorsi di immagine ... chi lo sa? Quando aggiorni i dati da ViewModel, non ha molto senso passare queste proprietà.

Come accennato, un'opzione è di agitarsi con i collegamenti in modo da non ottenere i dati non necessari. Ciò mi lascia freddo, comunque. Preferirei piuttosto vedere un parametro di azione che fa esattamente ciò che significa. Un UpdateModel esplicito fa il trucco. A volte, puoi semplicemente riciclare un modello di dominio. Se i dati che tornano dall'interfaccia utente sono un po 'più complicati (forse si associano a più di un modello di dominio), un UpdateModel separato ti serve bene.

Ricorda, questa non è necessariamente una pratica comune da ciò che vedo sul campo. Usando lo stesso criterio, tuttavia, osserverei che lavarsi i denti dopo i pasti sembra anche essere una pratica rara e non ho intenzione di rinunciarvi presto.

    
risposta data 02.12.2015 - 05:33
fonte

Leggi altre domande sui tag