0

我正在使用 ASP.NET 3.5 Web 表单。
我已将我的站点路径存储在 web.config 添加名为“CommonPath”的键。
现在我有一个简单的 html 页面,想在这个静态 html 页面上使用这个键。那么我该怎么做呢?或者还有其他方法吗?

提前致谢

4

2 回答 2

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 管理控制台进行操作。

于 2012-04-12T06:33:50.673 回答
1

根据 Ramesh 和 Andrew Barber 的评论:最好的方法是将 .html 文件重命名为 .aspx,以便 ASP.NET 处理它,而不是 IIS 只返回静态文件。将简单的重定向永久规则添加到您的 Web 服务器以处理遗留流量。如果您必须保持 .html 文件不变,您可以添加一个重写规则(如果您安装了 IIS 重写模块)以在无人知道的情况下将 .html 文件指向 .aspx 文件;或者,或者,使用 ASP.NET 路由来实现相同的效果。

于 2012-04-12T06:23:35.663 回答