.net 實(shí)現(xiàn) URL重寫,偽靜態(tài)_.Net教程
推薦:Asp.Net下通過切換CSS換皮膚換皮膚的方式有很多種,最簡(jiǎn)單的通常就是切換頁(yè)面CSS,而CSS通常寫在外部CSS文件里。那么切換css其實(shí)就是更換html里的link href路徑。我在網(wǎng)上搜索了下。一般有兩種方式: 1,在頁(yè)面放一個(gè)holder控件。然后用編程方式把當(dāng)前用戶的風(fēng)格css link寫入頁(yè)面。 2,通過反射機(jī)制
一,獲得Mircosoft URLRewriter.dll:
獲得Mircosoft URLRewriter.dll可以到http://www.microsoft.com/china/msdn/library/webservices/asp.net/URLRewriting.mspx?mfr=true
下載完畢后,導(dǎo)入工程,我這里沒有對(duì)該工程做任何修改,保留了原來的重寫方式,然后直接在VS2005里面生成.dll文件就可以了。
二,使用該dll文件:
添加引用,搞定。
三,頁(yè)面方面的設(shè)計(jì),這里不在贅述了,我會(huì)放一個(gè)下載包,有興趣的朋友下載來看看吧,代碼寫的比較亂。
四,web.config的配置
這部是非常關(guān)鍵的,也是靜態(tài)化能否成功的關(guān)鍵。
<?xml version="1.0"?>
<configuration>
<configSections>
<section name="RewriterConfig" type="URLRewriter.Config.RewriterConfigSerializerSectionHandler, URLRewriter" />
</configSections>
<RewriterConfig>
<Rules>
<RewriterRule>
<LookFor>~/web/new/type/(.[0-9]*)/.html</LookFor>
<SendTo>~/web/new.aspx?id=$1</SendTo>
</RewriterRule>
<RewriterRule>
<LookFor>~/web/index.html</LookFor>
<SendTo>~/web/index.aspx</SendTo>
</RewriterRule>
</Rules>
</RewriterConfig>
<system.web>
<httpHandlers>
<add verb="*" path="*.aspx" type="URLRewriter.RewriterFactoryHandler, URLRewriter" />
<add verb="*" path="*.html" type="URLRewriter.RewriterFactoryHandler, URLRewriter" />
</httpHandlers>
<compilation debug="true"/></system.web>
</configuration>
這里簡(jiǎn)單介紹一下:
<RewriterConfig>
<Rules>
<RewriterRule>
<LookFor>要查找的模式</LookFor>
<SendTo>要用來替換模式的字符串</SendTo>
</RewriterRule>
<RewriterRule>
<LookFor>要查找的模式</LookFor>
<SendTo>要用來替換模式的字符串</SendTo>
</RewriterRule>
</Rules>
</RewriterConfig>
httpHandlers的設(shè)置主要是配合IIS將請(qǐng)求重新定義處理,這里也比較關(guān)鍵,如果不存在合理的httpHandlers,那么,訪問肯定會(huì)失敗的。
關(guān)于正則表達(dá)式,可以到百度里搜索:"常用正則表達(dá)式",會(huì)有很多。
五.配置IIS解析.html文件
右鍵點(diǎn)我的電腦-->管理-->展開'服務(wù)和應(yīng)用程序'-->internet信息服務(wù)-->找到你共享的目錄-->右鍵點(diǎn)擊屬性 -->點(diǎn)擊'配置'-->映射下面 -->找到.aspx的可執(zhí)行文件路徑 復(fù)制路徑-->粘貼路徑-->擴(kuò)展名為".html"-->然后把檢查文件是否存在的勾去掉這樣就可以了,如果遇到“確定”按鈕失效,可以用鍵盤事件編輯路徑即可解決。
分享:ASP.NET DataTable去掉重復(fù)行的2種方法這篇文章主要介紹了ASP.NET DataTable去掉重復(fù)行的2種方法,本文直接給出去重代碼,需要的朋友可以參考下 第一種,使用Linq查詢表達(dá)式,code如下 ? 第二種方法 利用dataview來過濾datatable ?
- Asp.Net下通過切換CSS換皮膚
- ASP.NET DataTable去掉重復(fù)行的2種方法
- ASP.NET的(HttpModule,HttpHandler)
- 應(yīng)用Response.Write實(shí)現(xiàn)帶有進(jìn)度條的多文件上傳
- asp.net用cookie保存用戶密碼自動(dòng)登錄
- asp.net如何將后臺(tái)c#數(shù)組傳給前臺(tái)js?
- VC++根據(jù)explorer.exe進(jìn)程檢測(cè)用戶是否已登錄
- ASP.NET從客戶端中檢測(cè)到有潛在危險(xiǎn)的request.form值的3種解決方法
- ASP.NET WebForm中%=%>與%#%>的區(qū)別
- 淺談ASP.NET中最簡(jiǎn)單的自定義控件
- .net中webconfig 詳解
- ASP.NET抓取網(wǎng)頁(yè)內(nèi)容的實(shí)現(xiàn)方法
.Net教程Rss訂閱編程教程搜索
.Net教程推薦
- 淺析ASP.NET中前臺(tái)javascript與后臺(tái)代碼調(diào)用
- 技巧應(yīng)用:ASP.Net中的MD5加密
- ASP.NET中使用Global.asax文件
- Ajax簡(jiǎn)單客戶登陸驗(yàn)證
- ASP.NET立即上手教程(7)
- 解析五種ADO.NET數(shù)據(jù)庫(kù)連接知識(shí)
- 解讀Asp.net中過濾html,js,css代碼的方法
- 解析網(wǎng)頁(yè)中添加新浪天氣預(yù)報(bào)的幾種方法
- 注冊(cè)頁(yè)實(shí)現(xiàn)激活郵箱驗(yàn)證(asp.net c#)
- 將GridView內(nèi)容導(dǎo)出到Excel或Word中
- 相關(guān)鏈接:
- 教程說明:
.Net教程-.net 實(shí)現(xiàn) URL重寫,偽靜態(tài)
。