ASP.NET 對于靜態頁面的支持比較不友好,但我們可以通過<httpHandlers>
來偽裝出靜態頁面來,下面是具體的設置過程:
<add verb="*" path="*.html" type="System.Web.UI.PageHandlerFactory" validate="true" /><add verb="*" path="*.htm" type="System.Web.UI.PageHandlerFactory" validate="true" /><add verb="*" path="*.aspx" type="System.Web.UI.PageHandlerFactory" validate="true" />
以上的代碼就是要求所有類似于 .html,.htm,.aspx 結尾的文件都去匹配處理System.Web.UI.PageHandlerFactory
這個類型的處理請求。
有了以上配置之后,我們就可以按照正常的要求寫出 HTML 主題模板和內容模板,然后再寫一個處理 ASPX 頁面,將需要從頁面內容中動態生成的內容填充進去。
這樣,外層的頁面就是靜態頁面了,但是它實際上是通過 ASPX 頁面進行了填充,看上去非常簡潔,實際上卻具備了 ASPX 實現的所有功能,讓我們同時享受了靜態頁面的便捷以及動態頁面的靈活性。