MVC路由中routes.IgnoreRoute({resource}.axd/{*pathInfo}) 到底什么意思!
轉(zhuǎn)自:http://blog.csdn.net/lvjin110/article/details/24638913
參考(1)
http://www.cnblogs.com/flyfish2012/archive/2013/02/01/2889184.html
?
我們在開發(fā)MVC當(dāng)中,經(jīng)常在我們的全局類的路由設(shè)置,看到這樣的代碼:
routes.IgnoreRoute("{resource}.axd/{*pathInfo}") //對所有axd的資源 進(jìn)行忽略,直接進(jìn)行URL訪問幾乎有所有的同學(xué) 都默認(rèn)保留,也沒有人問津!
最近正好,在學(xué)習(xí)MVC的Filter這個(gè)刷選器,順便在群里發(fā)起討論,幾乎沒有一個(gè)準(zhǔn)確答案!
我正好借此機(jī)會學(xué)習(xí)了下:
{resource}.axd 表示后綴名為.axd所有資源 如webresource.axd
{*pathInfo} 表示所有路徑
這個(gè)axd到底是什么呢!
從上面可以看到,axd 是對C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll 的隱射。
那你這個(gè)時(shí)候,估計(jì)還不明白。這個(gè)*.axd到底是什么東東呢!
其實(shí)后綴名.axd 就是一個(gè)ashx一樣的weweb handler,實(shí)現(xiàn)接口IHttpHandler的方法。
這樣的好處可以:可以免去繁瑣的控件解析過程和頁面處理過程。
比如:fckeditor控件,我在調(diào)用它的時(shí)候 就得在webconfig 中注冊,那你這個(gè)時(shí)候 就需要路由設(shè)置當(dāng)中這句:
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");還比如:我們把css,js,image 等封裝到dll里,那我們這個(gè)時(shí)候也不需要路由器對其解析,可以直接訪問,也需要上面這句。
如:webresource.axd
但是你們?nèi)绻麤]有用第三方控件,或封裝Image,Css,Javascript到Dll的時(shí)候。
就可以完全可以刪除了! 不知道講解的對不對,希望路過的大牛指點(diǎn),不要誤人子弟為好!
?
轉(zhuǎn)載于:https://www.cnblogs.com/chengjun/p/5386832.html
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的MVC路由中routes.IgnoreRoute({resource}.axd/{*pathInfo}) 到底什么意思!的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Struts2_模块包含 及Actio
- 下一篇: 2015年第六届蓝桥杯C/C++程序设计