2009-03-18 6 views
5

Ho un HttpModule che ha associato un gestore di eventi a EndRequest.Una richiesta può essere gestita e conclusa prematuramente, all'inizio della pipeline?

Esiste un modo per gestire la richiesta all'interno del gestore eventi? Significa che non voglio solo eseguire il codice e mantenere la richiesta in movimento, ma voglio fermarlo alla rinfusa, restituire un 200 Status Code e chiamarlo un giorno, senza che sia necessario continuare con il prossimo passo pipeline.

risposta

6

HttpContext.Current.ApplicationInstance.CompleteRequest();

Documentation

+0

Questo sembra interessante, ma questo ucciderà la richiesta del tutto? Mi sembra che ti salti il ​​resto della pipeline e vada dritto a EndRequest. Tuttavia, è lì che ci sono già (questo è l'evento a cui ho legato il mio gestore), e non è ancora in grado di fornire una risposta? – Deane

+0

Questo finirà ogni ulteriore elaborazione della richiesta. Il tuo gestore non è l'unico gestore della pipeline, pertanto questo annullerà l'ulteriore elaborazione di altri gestori dopo il tuo e invierà immediatamente la risposta al cliente. –