Questione : Accedere all'intestazione di richiesta in C#

Sto provando ad usare Global.asax per fare rioriento nel mio Web site. Ho codice che funziona se la pagina chiesta è una pagina di .aspx. Tuttavia quando un dispositivo di piegatura inesistente come /products è chiesto, mi concludo in su sui 404 errori che page.

I ha caricato programmi oggetto l'attrezzo di ieHttpHeaders e vedo queste intestazioni nella pagina di errore:
Accept del

GET /products HTTP/1.1:
Accept-Language di */*: en-noi
UA-CPU: x86
Accept-Encoding: il gzip, sgonfi il
User-Agent: Mozilla/4.0 (compatibile; MSIE 7.0; Windows NT 5.1; .NET CLR 3.0.04506.30; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET CLR 3.0.4506.2152;
Host di .NET CLR 3.5.30729): sviluppatore-wwwasaorg
Connection: Il

If che di Keep-Alive potrei accedere alla prima linea di queste intestazioni in C#, io potrebbe scrivere il codice per fare di che cosa ho bisogno. Tuttavia non posso sembrare calcolare fuori come accedere all'OTTENERE. il
Request.ServerVariables [“ALL_HTTP„] mi dà tutto dopo la prima linea. Niente provo le elasticità me la prima linea.
del
Any… class= del

Risposta : Accedere all'intestazione di richiesta in C#

Quando fate una richiesta per una lima (o il dispositivo di piegatura) da un assistente di IIS, i controlli di IIS in primo luogo se la lima esiste - se non voi ottengono i 404 errori - se esista esso controlla l'estensione della lima chiesta e se è .aspx IIS passa la richiesta fuori al. Motore netto.

Così, nel vostro caso, poiché la lima non esiste, la richiesta non è data mai al. Motore d'elaborazione netto - così il vostro codice non funzionerà mai.  Il senso ottenere intorno a questo è o a 1) si assicura che la lima/dispositivo di piegatura esista (anche se è basicamente vuoto) o 2) fa non dare appena automaticamente IIS non fare affatto il controllo ed ogni richiesta a. Rete.

Siete su IIS 7 o 6?

Altre soluzioni  
 
programming4us programming4us