2009-06-27 10 views

Odpowiedz

8

Można to zrobić na dwa sposoby; po pierwsze w pliku web.config lub drugie w IIS

<system.web> 
    <httpHandlers> 
     <add verb="*" path="*.edmx" type="System.Web.HttpForbiddenHandler" /> 
    </httpHandlers> 
</system.web> 

Oto link do strony pomocy technicznej firmy Microsoft, który zawiera szczegółowy opis jak to zrobić w config WWW i IIS.

http://support.microsoft.com/kb/815152

+2

Warto zauważyć, że działa to tylko dla głównego pliku web.config - odpowiedź Mehrdada działa dla podfolderów –

9

Powinieneś zamapować rozszerzenie na klasę ASP.NET na System.Web.HttpForbiddenHandler w web.config. Jeśli korzystasz z IIS6, zanim to zrobisz, powinieneś zmapować rozszerzenie do obsługi ISAPI ASP.NET.

IIS7 Integrated Mode:

<system.webServer> 
    <handlers> 
     <add name="MyForbiddenExtensionHandler" 
      path="*.edmx" 
      verb="*" 
      type="System.Web.HttpForbiddenHandler" 
      preCondition="integratedMode" /> 
    </handlers> 
</system.webServer> 

IIS7 Classic Mode. Coś jak:

<system.web> 
    <httpHandlers> 
    <add path="*.edmx" 
     verb="*" 
     type="System.Web.HttpForbiddenHandler, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> 
    </httpHandlers> 
</system.web> 
<system.webServer> 
    <handlers> 
    <add name="MyExtensionISAPI" 
     path="*.edmx" 
     verb="*" 
     modules="IsapiModule" 
     scriptProcessor="C:\Windows\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness64" /> 
    </handlers> 
</system.webServer> 

IIS6 (po mapowaniu obsługi do aspnet_isapi.dll w konfiguracji IIS6):

<system.web> 
    <httpHandlers> 
    <add path="*.edmx" 
     verb="*" 
     type="System.Web.HttpForbiddenHandler, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> 
    </httpHandlers> 
</system.web> 
+0

type = "System.Web.HttpForbiddenHandler, system.Web" system.Web w końcu wyrzucił błąd. powinien być po prostu type = "System.Web.HttpForbiddenHandler". – Shimmy

+0

Zaktualizowano odpowiedź, podając pełną nazwę zestawu System.Web, aby był niezawodny. Wolę określić nazwę zespołu, aby zapobiec przypadkowemu załadowaniu go z innego zespołu, jeśli zawiera on typ o tej samej nazwie. –

Powiązane problemy