Shi*_*mmy 10 asp.net file-extension file-access
我在我的Web应用程序中有一个ADO.NET Entity-Framework*.edmx文件.
当我在浏览器中浏览(当应用程序运行时)到edmx文件时,它不显示错误页面,就像浏览到*.cs或vb文件一样,它会打开edmx并向所有显示我的模型方案用户!
我怎么能避免这种情况.
Meh*_*ari 11
您应该将扩展名映射到ASP.NET的System.Web.HttpForbiddenHandler类中web.config.如果您使用的是IIS6,则必须先将扩展名映射到ASP.NET ISAPI处理程序.
IIS7集成模式:
<system.webServer>
<handlers>
<add name="MyForbiddenExtensionHandler"
path="*.edmx"
verb="*"
type="System.Web.HttpForbiddenHandler"
preCondition="integratedMode" />
</handlers>
</system.webServer>
Run Code Online (Sandbox Code Playgroud)
IIS7经典模式.就像是:
<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>
Run Code Online (Sandbox Code Playgroud)
IIS6(在将处理程序映射到aspnet_isapi.dllIIS6配置之后):
<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>
Run Code Online (Sandbox Code Playgroud)
你可以这两种方式做到这一点; 首先在web.config中,或者在IIS中
<system.web>
<httpHandlers>
<add verb="*" path="*.edmx" type="System.Web.HttpForbiddenHandler" />
</httpHandlers>
</system.web>
Run Code Online (Sandbox Code Playgroud)
这是微软支持页面的链接,详细说明了如何在Web配置和IIS中执行此操作.
http://support.microsoft.com/kb/815152
| 归档时间: |
|
| 查看次数: |
6986 次 |
| 最近记录: |