因?yàn)閿?shù)據(jù)持久層選型,這段時間查閱了很多資料,也做了很多實(shí)驗(yàn),感覺這個東西雖然很強(qiáng)大,但在做大型項(xiàng)目時還是缺少靈活性,主要在以下幾個方面:
1、實(shí)體緩存支持不夠靈活,雖然支持緩存,但必須對ObjectContext進(jìn)行單例或多例管理,而且哪些緩存,哪些不緩存,緩存多少,如何刷新,都不是很完善;
2、ESQL不支持復(fù)雜的查詢,這對于ERP之類的軟件其實(shí)是個軟肋;
3、如果要用edmx,分割和維護(hù)都是個麻煩事情;
4、如果表在不同的ObjectContext(也許是edmx),關(guān)聯(lián)查詢無法執(zhí)行;
5、如果利用objectContext直接執(zhí)行sql語句,返回的結(jié)果必須提供預(yù)先定義的實(shí)體類,不是很方便;
6、這個東東的延續(xù)性不是很好,微軟解決一些缺點(diǎn)時不是在原有體系上兼容,而是另起爐灶,DbContext就有取代ObjectContext的趨勢,雖然兩個都可以用,還可以混合,但至少暴露出延續(xù)性是個問題,改過來還是需要一些成本的。
7、用實(shí)體這種強(qiáng)類型確實(shí)有利于編程,但在系統(tǒng)中,復(fù)雜的查詢,特別是動態(tài)構(gòu)造的查詢沒法使用,這是非常不利的。即不利于提高系統(tǒng)的靈活性,又沒法減少工作量。
AEF從目前來看,功能的強(qiáng)大基本達(dá)到數(shù)據(jù)庫系統(tǒng)級別:內(nèi)存實(shí)體關(guān)系數(shù)據(jù)庫。難道微軟想用此替代SQLServer,Oracle?
其實(shí)我到希望微軟能在ADONet上提供一個數(shù)據(jù)庫
方言處理的類庫。
當(dāng)然,AEF的優(yōu)點(diǎn)很多,微軟已經(jīng)宣傳的很多了,我就不說了.
至于測試驅(qū)動,代碼優(yōu)先,概念優(yōu)先都是些忽悠人的東東(至少很有一部分),微軟忽悠程序員,程序員忽悠老板,老板忽悠客戶。
后記:我很贊同有些同仁的說法,我也發(fā)覺,我越是了解它,越覺得它是個又臭又長的家伙。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
