Ho un'app Web (ASP MVC2) in cui è possibile accedere a alcuni moduli tramite più percorsi, inizialmente una volta completato il modulo, un utente è stato reindirizzato a una pagina predefinita per tale modulo anziché alla pagina da cui è stato inserito.
Ora sto riprogettando un'area considerevole che voglio affrontare, voglio una soluzione che sia facile da aggiungere. Ho un paio di idee ma non sono sicuro su quale debba andare, so che vuoi che sia "invisibile" (cioè non toccare i miei URL).
Quindi sto pensando sia:
Potrei avere campi nascosti per la pagina dei referrer sui moduli.
In alternativa, potrei usare TempData e avere un attributo che gestisca il controllo e l'aggiunta dell'URL del referrer (probabilmente includerebbe una stringa per ciascuno dei diversi percorsi in modo che un utente possa avere 2 diverse forme aperte e che i referrer non interferiscano) .
Il problema con il valore del modulo è che richiederebbe campi non correlati ai modelli in ciascuna delle viste e si interromperà se nel flusso di lavoro sono presenti richieste GET. richiederebbe anche la gestione manuale di questa proprietà in ogni vista e azione.
L'approccio agli attributi TempData + sarebbe un modo molto più efficace per applicarlo, ma è possibile che i poweruser che stanno facendo molte cose contemporaneamente abbiano referrer in conflitto per le stesse forme.
Mi sto appoggiando a quest'ultimo approccio in quanto è più elegante e più facile da tenere traccia di come non vedo ci siano molti casi limite in cui viene sovrascritto, ma sono preoccupato per l'esperienza utente se succede Ne vale la pena?