Sto prendendo in prestito un progetto classico di legacy fino ad una tecnologia più moderna (ho lavorato con ASP.NET MVC ultimamente, quindi l'utilizzo di questo concetto è bloccato nella mia mente), ma sto cercando di pensare a come strutturare il progetto.
L'idea è che l'azienda fornisca un servizio ai clienti, ma il servizio è ospitato sul sito Web della società (anziché sul client) e presenta alcuni marchi / specifiche per il cliente. Diciamo che ci sono 4 o 5 pagine / passaggi per il servizio, ma alcune di queste pagine / passaggi possono essere personalizzate per ogni cliente. Quindi, quello che preferirei è:
*/step1
*/step2
*/step3
*/step4
*/step5
Dove *
è il nome client
ma i passaggi sono riutilizzabili. Questo non sembra prestarsi alla struttura MVC standard, o non riesco a vedere la foresta per gli alberi. Non vorrei un controller per ogni client
e ripetere i passaggi per n
client. Preferirei avere 5 passaggi in cui step2
o step3
potrebbero essere espansi per il client X, espanso su più per il client Y e lasciato solo per il client Z.
Se la società ha 100 client che desiderano i 5 passi standard (nessuna personalizzazione), non vorrai che 100 controllori servano fino a 5 passi (500 .cshtml
di pagine nel progetto) ... giusto? Come si potrebbe progettarlo correttamente?