新聞中心
ADO.NET團(tuán)隊(duì)最近討論了ADO.NET Entity框架的各種性能特征。ADO.NET Entity框架在12月已經(jīng)進(jìn)入它的第三個(gè)beta版本,自那時(shí)起開發(fā)團(tuán)隊(duì)就開始為開發(fā)人員提供了使用該框架的相關(guān)信息。

公司主營業(yè)務(wù):網(wǎng)站設(shè)計(jì)制作、做網(wǎng)站、移動(dòng)網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。成都創(chuàng)新互聯(lián)公司是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶帶來驚喜。成都創(chuàng)新互聯(lián)公司推出萬秀免費(fèi)做網(wǎng)站回饋大家。
本文鞭辟入里地介紹了ADO.NET Entity框架的性能,演示了如何提高簡單查詢速度的方法,并闡釋了框架的性能特征。需要重點(diǎn)指出的是,當(dāng)一個(gè)抽象層或者類似EDM(譯注:指Entity Data Model)的模塊被用來轉(zhuǎn)換數(shù)據(jù)庫的關(guān)系樣式時(shí),ADO.NET團(tuán)隊(duì)帶來一定的性能損失。
查詢與結(jié)果
本文使用了NorthWind數(shù)據(jù)庫作為模型,并創(chuàng)建了一個(gè)簡單查詢:
- (NorthwindEntities ne = NorthwindEntities())
- {
- (Order o ne.Orders)
- {
- i = o.OrderID;
- }
- }
測試時(shí),我們的每個(gè)查詢對整個(gè)848行數(shù)據(jù)進(jìn)行了10次遍歷。結(jié)果很有意思,第1次運(yùn)行時(shí)耗費(fèi)了4241毫秒,而接下來的每次運(yùn)行則平均耗費(fèi)13毫秒左右的時(shí)間。最耗時(shí)的一部分內(nèi)容是ObjectContext的創(chuàng)建,ADO.NET團(tuán)隊(duì)而在執(zhí)行任意一個(gè)訪問數(shù)據(jù)庫的操作時(shí),都會(huì)有一些耗時(shí)的操作發(fā)生。#t#
耗時(shí)百分比值***的是視圖生成,它達(dá)到了驚人的56%。既然視圖生成是造成性能損耗的罪魁禍?zhǔn)?,那么開發(fā)人員***是使用命令行工具EDM生成器(EdmGen.exe),運(yùn)行時(shí)需要加上視圖生成命令參數(shù)(/mode:ViewGeneration),ADO.NET團(tuán)隊(duì)的輸出內(nèi)容為一個(gè)代碼文件(C#或者VB.NET),可以包含在項(xiàng)目中。視圖的預(yù)生成可以將啟動(dòng)時(shí)間降低到2933毫秒,而對于循環(huán)遍歷操作,整個(gè)時(shí)間可以降低28%。生成視圖并隨著應(yīng)用程序一起發(fā)布是提高性能的妙方,但其缺點(diǎn)則在于視圖不再是動(dòng)態(tài)的,一旦模型發(fā)生改變,就需要重新生成以保持同步。
文章題目:測試ADO.NET團(tuán)隊(duì)進(jìn)行學(xué)習(xí)了解
URL分享:http://fisionsoft.com.cn/article/djchsee.html


咨詢
建站咨詢
