真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

ADO.NET實體數(shù)據(jù)模型怎么實現(xiàn)

這篇文章主要講解了“ADO.NET實體數(shù)據(jù)模型怎么實現(xiàn)”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“ADO.NET實體數(shù)據(jù)模型怎么實現(xiàn)”吧!

創(chuàng)新互聯(lián)從2013年成立,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項目網(wǎng)站設(shè)計制作、網(wǎng)站設(shè)計網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元橋東做網(wǎng)站,已為上家服務(wù),為橋東各地企業(yè)和個人服務(wù),聯(lián)系電話:18980820575

ADO.NET是.NET與數(shù)據(jù)庫互操作的核心,而ADO.NET實體數(shù)據(jù)庫則增強了.NET應(yīng)用程序與數(shù)據(jù)庫的互聯(lián)能力,通過ADO.NET實體數(shù)據(jù)模型我們可以很方便的與底層數(shù)據(jù)庫進(jìn)行強類型的數(shù)據(jù)互操作。大大的方便了設(shè)計人員,從而也提高了數(shù)據(jù)庫操作的安全性。最近在使用到Silverlight的領(lǐng)域數(shù)據(jù)服務(wù)時遇到一個很特別的問題[在應(yīng)用程序中的結(jié)果和數(shù)據(jù)庫的結(jié)果不一樣],經(jīng)過反復(fù)的試驗,終于找到了問題的根源,那就是ADO.NET實體數(shù)據(jù)模型依賴于實體鍵,它的查詢會生成實體鍵的唯一結(jié)果集。

現(xiàn)在來看看具體的操作過程和處理方式:

為了對數(shù)據(jù)庫的表進(jìn)行操作,在數(shù)據(jù)庫的視圖中建立了一個連接兩個原子表的 vw_DesksAndUsers 的視圖,這個視圖旨在為了連接已存在的User表和Desk的數(shù)據(jù),于是我做了如下的T-SQL的視圖,如下所示:

ADO.NET實體數(shù)據(jù)模型怎么實現(xiàn)

在SQL Server 2008中得到的查詢結(jié)果如下:

ADO.NET實體數(shù)據(jù)模型怎么實現(xiàn)

也就是說得到了預(yù)期的結(jié)果,[這一步很成功]。接下來進(jìn)行第二步。

第二步:新建一個Silverlight商業(yè)應(yīng)用程序SilverlightDomainDb,在生成的項目中會支持WCF RIA服務(wù)。這是對Silverlight領(lǐng)域服務(wù)的支持所必須的。

第三步:在Web項目中添加一個ADO.NET實體數(shù)據(jù)模型的新項,在向?qū)е羞x擇相應(yīng)的數(shù)據(jù)庫連接和數(shù)據(jù)表、視圖及存儲過程等,完成以后會生成相應(yīng)的實體數(shù)據(jù)類型和上下文,并得到.edmx的模型圖。如下所示:

ADO.NET實體數(shù)據(jù)模型怎么實現(xiàn)

根據(jù)Visual Studio 2010的提示,它為我們生成了兩個實體鍵:DeskId,IsPlaying(這是Desk表中的兩個字段);現(xiàn)在重新生成項目。

第四步:根據(jù)實體模型添加Web領(lǐng)域服務(wù)項。(在這一步需要添加相應(yīng)的表和元數(shù)據(jù)信息)

第五步:Silverlight項目中將數(shù)據(jù)源所在vw_DesksAndUsers 的Datagrid拖到Home.xaml中,完成、調(diào)試。并沒有得到上面的結(jié)果,而是生成了如下的Datagrid:

ADO.NET實體數(shù)據(jù)模型怎么實現(xiàn)

經(jīng)過仔細(xì)的觀察,才發(fā)現(xiàn)原來是ADO.NET實體數(shù)據(jù)模型中的結(jié)果集依賴于實體鍵,也就是說Silverlight領(lǐng)域服務(wù)會根據(jù)實體鍵的唯一生成查詢的結(jié)果集,于是就產(chǎn)生了上面的以DeskId為唯一鍵的數(shù)據(jù)。

處理:

根據(jù)以上的分析,要得到預(yù)期的結(jié)果,必須設(shè)置合適的實體鍵,為了不至于影響到底層的SQL數(shù)據(jù)庫,我們只需要修改.edmx模型圖中的的實體鍵即可(點擊右鍵選中或不選中“實體鍵”):

ADO.NET實體數(shù)據(jù)模型怎么實現(xiàn)

現(xiàn)在重新生成項目并運行程序,程序得到了預(yù)期的結(jié)果。

ADO.NET實體數(shù)據(jù)模型怎么實現(xiàn)

Silverlight商業(yè)應(yīng)用程序作為一個專為數(shù)據(jù)顯示而生的模板,為數(shù)據(jù)庫的呈現(xiàn)提供了友好的界面,由于其優(yōu)化的數(shù)據(jù)庫的處理方式使得我們在使用時不得不考慮一些它們之間的細(xì)微差別[由于在Visual Studio中沒能看到有LINQ生成的T—SQL查詢語句,所以我也只是提供了一個簡單的解決方案而已],我想其深層的原因在于LINQ查詢中生成的T-SQL語句與數(shù)據(jù)庫中的T-SQL語句不同而產(chǎn)生。 

感謝各位的閱讀,以上就是“ADO.NET實體數(shù)據(jù)模型怎么實現(xiàn)”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對ADO.NET實體數(shù)據(jù)模型怎么實現(xiàn)這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!


網(wǎng)站名稱:ADO.NET實體數(shù)據(jù)模型怎么實現(xiàn)
文章URL:http://weahome.cn/article/gsigsc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部