Domanda

Ho un'azione che devo postare su un'altra azione se soddisfa determinate condizioni, ma non sono in grado di conservare i dati del modulo quando si passa all'azione successiva.

L'azione ricevente accetta un FormCollection, che l'azione di invio

Attualmente sto eseguendo un ritorno RedirectToAction (modulo "action", "controller", ")". E posso determinare che la variabile form ha le chiavi prima che reindirizzi (form.HasKeys () = true).

Quando l'azione viene comunque eseguita, FormCollection è vuoto (form.HasKeys () = false).

Qualche idea? Esiste un metodo "PostToAction" che mi manca?

Cordiali saluti: Sto usando ASP.NET MVC Beta. Mille grazie!

Modifica: per coloro che hanno questo problema, consultare Modello PRG . Questo è il termine effettivo di ciò che stavo cercando di fare, il che mi consente anche di creare URL.

È stato utile?

Soluzione

Quando viene chiamato RedirectToAction, verrà effettuato un reindirizzamento HTTP e verrà rilevato l'URL dell'altra azione. Se hai bisogno di riutilizzare il codice da un altro controller, farei quello che suggeriscono le ewalshe, spostare il comune su un BaseController o un servizio aziendale e delegare entrambe le azioni.

Questo link può aiutare:

Altri suggerimenti

Riformulerei i due controller e inserivo il codice comune in un helper o in una classe base comune. In questo modo le azioni nei due controller possono delegare al codice comune.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top