我正在使用ASP.NET 3.5网络表单 我已将我的站点路径存储在web.config中,添加名为“CommonPath”的键 现在我有一个简单的html页面,想在这个静态html页面上使用这个键。 那我该怎么做呢?或者还有其他办法吗?
提前致谢
答案 0 :(得分:2)
我过去所做的是将“.html”页面注册为动态页面。 (即,就像ASPX一样)。
这可以通过“web.config”文件完成:
....
<system.web>
<compilation ...>
<buildProviders>
<add extension=".html"
type="System.Web.Compilation.PageBuildProvider" />
</buildProviders>
....
和
....
<system.webServer>
<handlers>
<remove name="WebServiceHandlerFactory-Integrated" />
<add name="PageHandlerFactory-Integrated-HTML" path="*.html"
verb="GET,HEAD,POST,DEBUG" type="System.Web.UI.PageHandlerFactory"
resourceType="Unspecified" preCondition="integratedMode" />
</handlers>
....
正如Robert指出的,这适用于IIS 7和IIS 7.5(也可能在上面的版本中)。如果您使用的是IIS 6,则必须通过IIS管理控制台执行此操作。
答案 1 :(得分:1)
根据Ramesh和Andrew Barber的评论:最好的方法是将.html文件重命名为.aspx,以便ASP.NET只处理静态文件而不是IIS。向Web服务器添加一个简单的重定向永久规则,以处理旧流量。如果必须按原样保留.html文件,则可以添加重写规则(如果安装了IIS重写模块),将.html文件指向.aspx文件,而无需任何人知道;或者,使用ASP.NET路由来实现相同的效果。