本次StringTempletReplet.dll組件更新了一些算法。主要是更依賴內(nèi)存里靜態(tài)變量?jī)?nèi)的數(shù)值。
做到了在不改變模板的條件下。緩存模板,緩存委托,緩存標(biāo)簽解析數(shù)據(jù)。但是這會(huì)更消耗一些內(nèi)存。 
為了可以動(dòng)態(tài)更換模板,不得不每次檢測(cè)文件的時(shí)間。在這個(gè)上消耗了不少時(shí)間。也許將來(lái)應(yīng)該去掉
動(dòng)態(tài)更換模板的功能,只提供一個(gè)通知模板類重新讀哪個(gè)模板文件的接口。
取消了這個(gè)頁(yè)面 (RetuenString.aspx --接受標(biāo)簽字符串 返回解析結(jié)果)
畢竟標(biāo)簽不會(huì)做成一種腳本語(yǔ)言。這個(gè)功能沒(méi)有意義。
有人說(shuō)不知道總么用這個(gè)模板類在此簡(jiǎn)要說(shuō)一下:
    
     模板類主要作用讀的不是整頁(yè)的模板。主要是讀頁(yè)面碎片模板。就是讀碎片,解析,顯示。
在web2.0站點(diǎn),比如blog開發(fā)。用戶自定義皮膚的頁(yè)面。或者說(shuō)全靜態(tài)頁(yè)新聞系統(tǒng)更新中
是有很大作用的。
     
     標(biāo)簽的功能是通過(guò)標(biāo)簽解析函數(shù)來(lái)擴(kuò)展的。所以模板類的速度不光是StringTempletReplet.dll組件
本身執(zhí)行的速度。還要加上標(biāo)簽解析函數(shù)執(zhí)行的時(shí)間。我例子提供的標(biāo)簽解析函數(shù)只是返回簡(jiǎn)單的字符串。
是為了方便說(shuō)名一下。模板類做的只是提供一個(gè)舞臺(tái)。并盡量讓模板類執(zhí)行的時(shí)間快一些。至于標(biāo)簽解析
函數(shù)是總么執(zhí)行。用多少時(shí)間。那就是使用人的事情了。
    正則替換模板類也寫過(guò)。但是自己測(cè)試在長(zhǎng)度為200多萬(wàn)的字符串上進(jìn)行標(biāo)簽定位分析。比指針定位
要慢8倍以上。當(dāng)模板字符串長(zhǎng)度不斷減小的時(shí)候。也許差距會(huì)漫漫減小。但是即使兩個(gè)的標(biāo)簽定位時(shí)間
一樣。根據(jù)字符串不可改變性,對(duì)一個(gè)字符串不斷的替換會(huì)產(chǎn)生新的字符串。太消耗資源了。
    Business.cs可以放在UI層  也可以放在邏輯層。只要繼承了FunctionList類就可以。繼承這個(gè)類只要
重寫靜態(tài)構(gòu)造函數(shù)就可以了。在靜態(tài)構(gòu)造函數(shù)內(nèi)建立標(biāo)簽和標(biāo)簽執(zhí)行函數(shù)的對(duì)應(yīng)。
其實(shí)在以前的版本里寫過(guò)一種執(zhí)行標(biāo)簽。就是在標(biāo)簽名前加"執(zhí)行_"標(biāo)記
             {$執(zhí)行_標(biāo)簽名:參數(shù)1:參數(shù)2:參數(shù)3::字符10$}
這樣就不用重寫靜態(tài)構(gòu)造函數(shù)。是通過(guò)反射來(lái)執(zhí)行。但是速度很慢。后來(lái)就取消了。畢竟對(duì)模板類來(lái)說(shuō)
速度是很關(guān)鍵的。
    我沒(méi)有固定的位置可以讓大家下載,以前是把壓縮文件該為gif圖片。傳到網(wǎng)易的個(gè)人資料里。但是
后來(lái)網(wǎng)易對(duì)圖片進(jìn)行檢測(cè)了。讓大家下不了。我在找新位置吧。圖片位置會(huì)多變。
 
現(xiàn)在是  http://www.93913.com/Edit_html/UploadFile/20065/200652205536669.gif  
只要圖片還沒(méi)有被刪除。可以下這個(gè)位置的圖片 改為  Templet.rar 文件就好
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注