Nella mia applicazione WPF, voglio creare una nuova vista. Dove dovrei farlo - in ViewModel o Model ?
L'applicazione è uno strumento simile a una finestra (molto semplice per ora) con un solo pulsante "invia". Nel caso in cui sia selezionata una delle caselle di controllo, dovrebbe apparire una nuova finestra che utilizza lo stesso ViewModel per chiedere all'utente ulteriori dettagli. Ai fini di questa domanda, consideriamo solo il nuovo approccio della finestra senza considerare altri approcci come il pannello mostrato / nascosto.
Idealmente, in View non dovrebbe esserci alcun codice. Inoltre, poiché View non ha alcuna logica in essa, la VM dovrebbe inizialmente verificare se è necessaria la creazione di una nuova visualizzazione e, quando lo è, rimandare questa responsabilità a View, portando a un gonfiamento del codice.
D'altra parte, la creazione di una nuova vista in ViewModel viola il principio secondo cui ViewModel non dovrebbe sapere nulla di View.
Quindi, è meglio creare nuove viste in View o ViewModel?