ADO.NET Framework進(jìn)行數(shù)據(jù)分析
如果你堅(jiān)持在.NET世界中使用ADO.NET Framework那么請(qǐng)準(zhǔn)備好面對(duì)一些其它的影響,例如你需要額外的代碼才能夠從數(shù)據(jù)綁定控件中使用recordset.查詢、插入、更新、刪除操作,前兩種方式也常被用于面向WEB的環(huán)境中以及全新的ADO.NET Framework系統(tǒng)當(dāng)中.
分別在選擇插入/更新/刪除函數(shù)的地方選擇對(duì)應(yīng)的存儲(chǔ)過(guò)程名,然后設(shè)置屬性的映射。ADO.NET Framework一般的存儲(chǔ)過(guò)程參數(shù)會(huì)自動(dòng)設(shè)置好映射,但是外鍵列需要手動(dòng)設(shè)置。
Delete存儲(chǔ)過(guò)程中的groupid是一個(gè)沒(méi)有用的參數(shù)。#t#
加上這個(gè)參數(shù)的原因是在插入和更新操作中都涉及到了2個(gè)實(shí)體類,如果刪除函數(shù)中沒(méi)有映射Group這個(gè)導(dǎo)航屬性會(huì)報(bào)2048錯(cuò)誤。現(xiàn)在,CRUD的存儲(chǔ)過(guò)程都已經(jīng)映射好了。
調(diào)用存儲(chǔ)過(guò)程
插入/更新/刪除操作只需要像平時(shí)一樣使用ADO.NET Framework更新實(shí)體類并SaveChanges/DeleteObject這些方法就可以了。查詢需要顯式調(diào)用。
但是如果此時(shí)你用ADO.NET Framework對(duì)數(shù)據(jù)進(jìn)行CRUD操作并不會(huì)使用存儲(chǔ)過(guò)程,我們需要將存儲(chǔ)過(guò)程進(jìn)行映射。查詢和另外三項(xiàng)操作的映射方式不同,我們分開(kāi)討論。
先說(shuō)查詢存儲(chǔ)過(guò)程的導(dǎo)入。在模型瀏覽器中右鍵點(diǎn)擊函數(shù)導(dǎo)入,選擇創(chuàng)建函數(shù)導(dǎo)入。