Vraag : Het verzoekkopbal van de toegang in C#

Ik probeer om Global.asax te gebruiken om te doen opnieuw richt in mijn website. Ik heb code die werkt als de gevraagde pagina een.aspx- pagina is. Nochtans wanneer een onbestaande omslag zoals /products wordt gevraagd, beëindig ik omhoog op de 404 fouten page.

I downloadde het ieHttpHeadershulpmiddel, en ik zie deze kopballen in de foutenpagina:

GET /products HTTP/1.1
Accept: */*
Accept-Language: Engels-ons
UA-CPU: x86
Accept-Encoding: gzip, laat leeglopen
User-Agent: Mozilla/4.0 (compatibel systeem; MSIE 7.0; Vensters 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; .NET CLR 3.5.30729)
Host: dev-wwwasaorg
Connection: Keep-Alive

If ik kon tot de eerste lijn van deze kopballen in C# toegang hebben, kon ik de code schrijven om te doen wat de behoefte van I. Nochtans kan ik niet schijnen berekenen hoe te om tot GET toegang te hebben.
Request.ServerVariables [„ALL_HTTP“] geeft me alles na de eerste lijn. Niets ik probeer geeft me de eerste lijn.
Any hulp gewaardeerde…

Antwoord : Het verzoekkopbal van de toegang in C#

Wanneer u een verzoek om een dossier (of omslag) van een server IIS indient, de controles IIS eerste als het dossier bestaat - als niet u de 404 fouten krijgt - als het bestaat het de uitbreiding van het gevraagde dossier controleert, en als het .aspx IIS overhandigt weg het verzoek aan is. Netto motor.

Zo, in uw geval, aangezien het dossier niet bestaat, wordt het verzoek nooit gegeven aan. Netto verwerkingsmotor - zo zal uw code nooit lopen.  De manier om rond dit te krijgen is aan één van beide 1) ervoor zorgt het dossier/de omslag bestaan (zelfs als het) fundamenteel leeg is of 2) hebben IIS om het even welke het controleren niet doen en enkel elk verzoek automatisch geven aan. Netto.

Bent u op IIS 7 of 6?

Andere oplossingen  
 
programming4us programming4us