国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

低效的selectSingleNode和高效的ListView數據添加

2024-07-21 02:24:26
字體:
來源:轉載
供稿:網友

最大的網站源碼資源下載站,

以下是santomania帶給我們的一些提高代碼性能的建議,在他的博客網站上,你能看到不少他關于sharepoint的見解。

一、低效的selectsinglenode

我最近一直在使用reflecting,然而我確實已經通過lamont harrington對此做了提示,雖然對我來說這并不是一個新聞(一般說來,在木桶中,我不會是最慢的魚^_^),但我發現它仍然值得一提。

反編譯xmlnode.selectsinglenode方法,你將獲得如下結果(原諒我的vb.net):

public overloads function selectsinglenode(byval xpath as string) as xmlnode

begin function

dim list1 as xmlnodelist
dim node1 as xmlnode
try

list1 = me.selectnodes(xpath)
node1 = list1.itemof(0)

catch argumentoutofrangeexception

node1 = nothing

end try
return node1

end function

你將會看到,selectsinglenode僅僅是selectnodes的包裝,這意味著它(最快)不會比selectnode更快,并且,如果你在深入研究一點,selectnodes反編譯后如下:

public overloads function selectnodes(byval xpath as string) as xmlnodelist
begin function

im navigator1 as xpathnavigator
navigator1 = me.createnavigator
return new xpathnodelist(navigator1.select(xpath))

end function

讓人感到沮喪痛苦的是:selectnodes確實是創造了一個xpathnavigator實例!!

我想,首選的解決方案是:實例化我們自己的xpathnavigator并且在對xml文檔執行xpath查詢的時候重復使用它,特別是我們執行嵌套循環的查詢時。

二、高效的listview數據添加

怎樣促進你的listview的性能?不要使用在同一個的循環中去創造和添加listviewitem的方法。更好的方法是:創造一個listviewitem的集合,并且使用addrange方法去添加它們。我顯示這個方法對團隊中的一個開發者,在大量目錄添加的情況下(超過1500條記錄),他的listview的性能比原來要高效1000倍。



最后,不知你注意到了沒有,dictionaryentry不是一個類,而是一個結構。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 喀喇| 大埔县| 江口县| 栾川县| 郓城县| 吉首市| 玛曲县| 大埔县| 宜宾县| 藁城市| 苏尼特右旗| 绍兴县| 郑州市| 柏乡县| 保靖县| 中宁县| 南乐县| 科技| 绥滨县| 城市| 扶沟县| 铜鼓县| 隆回县| 改则县| 永福县| 左贡县| 老河口市| 宜州市| 抚远县| 肇东市| 青龙| 桦甸市| 元阳县| 集安市| 犍为县| 桃园县| 焉耆| 中牟县| 沙坪坝区| 比如县| 资中县|