日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
深入ADO.NET實(shí)體數(shù)據(jù)模型 增強(qiáng)互通能力

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

成都創(chuàng)新互聯(lián)公司專業(yè)為企業(yè)提供耒陽(yáng)網(wǎng)站建設(shè)、耒陽(yáng)做網(wǎng)站、耒陽(yáng)網(wǎng)站設(shè)計(jì)、耒陽(yáng)網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)與制作、耒陽(yáng)企業(yè)網(wǎng)站模板建站服務(wù),十多年耒陽(yáng)做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。

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

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

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

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

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

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

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

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

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

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

處理:

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

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

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


文章題目:深入ADO.NET實(shí)體數(shù)據(jù)模型 增強(qiáng)互通能力
URL網(wǎng)址:http://m.5511xx.com/article/dhgjich.html