一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

Microsoft .NET RIA Services快速上手

在MIX 09上,Nikhil Kothari發(fā)布了微軟的一神作——Microsoft .NET RIA Services。雖然目前的版本僅僅是可憐的"March '09 Preview”,但它已經(jīng)足夠讓人興奮不已。簡單地說,在這之前,如果你用到了現(xiàn)在的RIA技術(shù)比如Silverlight,你只能選擇寫大量的服務(wù)或者WCF來實(shí)現(xiàn)數(shù)據(jù)的操作功能;而有了.NET RIA Services,你在RIA項(xiàng)目上操作數(shù)據(jù),就像ASP.NET那樣方便!

Nikhil Kothari在MIX09上介紹.NET RIA Services的視頻:

http://www.nikhilk.NET/RIA-Services-MIX09.ASPx

 

Microsoft .NET RIA Services March '09 Preview及文檔下載地址:

http://www.microsoft.com/downloads/details.ASPx?displaylang=en&FamilyID=76bb3a07-3846-4564-b0c3-27972bcaabce

 

MSDN Code Gallery中的.NET RIA Services Samples

http://code.msdn.microsoft.com/RiaServices

好了,以上是概要,下面讓我們說得更詳細(xì)些。

 

傳統(tǒng)的RIA是怎樣操作數(shù)據(jù)的

在去年這個(gè)時(shí)候,Silverlight 2Beta剛發(fā)布,有個(gè)朋友問我能不能使用Silverlight直接操作數(shù)據(jù)庫。當(dāng)時(shí)的答案當(dāng)然是:很遺憾,不行。我們不得不使用大量的Web Services或者WCF來提供對數(shù)據(jù)庫操作的每一個(gè)環(huán)節(jié),Silverlight只能與數(shù)據(jù)層“間接接觸”。

image

上圖表明了整個(gè)過程。這樣的數(shù)據(jù)操作雖然已經(jīng)被大家習(xí)慣,但它是不合理的。就像是在實(shí)現(xiàn)“三通”以前,咱們?nèi)ヅ_灣只能先去香港轉(zhuǎn)機(jī)。

博客園的大牛Shareach前幾天寫了一個(gè)Silverlight的聊天程序,數(shù)據(jù)操作使用的是WCF Duplex Service實(shí)現(xiàn)雙向通訊,非常牛,大家可以去看看。(圍觀連接:http://www.cnblogs.com/yinpengxiang/archive/2009/03/23/slChat.html)這是Silverlight操作數(shù)據(jù)層的一個(gè)成功案例,但也會讓人覺得悲哀:這樣一個(gè)表面上很簡單的聊天程序,為什么有了WCF的參與就變得很復(fù)雜?

這是因?yàn)椋@樣的“間接接觸”,不僅不直觀,還浪費(fèi)了開發(fā)者大量的經(jīng)理去考慮一些不該考慮的問題。開發(fā)者需要在客戶端、Web Service端,BLL端各寫一個(gè)不同版本的數(shù)據(jù)操作代碼,并且還要考慮他們之間交互的安全性、網(wǎng)絡(luò)情況等等,簡直就是一個(gè)浪費(fèi)大量ATP只產(chǎn)生微量GDP的過程。

 

合理的數(shù)據(jù)操作應(yīng)該怎樣的

image

上圖展示了微軟在RIA與數(shù)據(jù)庫交互上的宏偉構(gòu)想:無論是Silverlight,WPF,Javascript,還是ASP.NET,WCF,它們都應(yīng)該使用無差別的數(shù)據(jù)邏輯,能夠直接訪問到數(shù)據(jù)層面,而不需要通過一層類似“代理”的數(shù)據(jù)服務(wù)。

 

Microsoft .NET RIA Services將如何實(shí)現(xiàn)“合理”

image

以上就是.NET RIA Services的實(shí)現(xiàn)原理。開發(fā)者在ASP.NET端的數(shù)據(jù)處理類(本圖中是HRService)繼承自一個(gè)叫做DomainService的類,在里面實(shí)現(xiàn)一些數(shù)據(jù)操作。.NET RIA Services就會自動(dòng)生成相應(yīng)的客戶端類(本圖中是HRContext)。而在我們開發(fā)客戶端的時(shí)候,我們就可以直接調(diào)用.NET RIA Services生成的那個(gè)類,直接操作數(shù)據(jù)層面。

 

入門實(shí)例:
在了解.NET RIA Services想要完成的任務(wù)及其具體實(shí)現(xiàn)方法后,我們可以開始通過實(shí)例的方式來體驗(yàn)一下了。

  1. 開發(fā)環(huán)境:Visual Studio 2008 SP1 ,Silverlight 3 Beta SDK image ,Silverlight Tools 3.0image , Microsoft .NET RIA Services March '09 Previewimage , SQL Server 2005
  2. 在VS2008中新建Silverlight項(xiàng)目
    無標(biāo)題
  3. 將Silverlight連接到ASP.NET Server project上
    無標(biāo)題1
    完成該步驟后的Solution Explorer如下圖所示
    無標(biāo)題3
  4. 在Web項(xiàng)目上單擊右鍵,新建image
    未命名4
  5. 選擇SQL Server2005里的數(shù)據(jù)庫和表。VS會幫我們生成一個(gè)ADO.NET的實(shí)體(Entity)。
    未命名5 未命名6
    生成的文件后綴名為.edmx,如本例中的image
  6. 編譯整個(gè)Solution。
  7. 再次在Web項(xiàng)目上右擊,新增本文的主角——Domain Service Classimage 。"Domain Service Class”這名字挺熟的吧?嗯,上文介紹過了。
    未命名7 
    根據(jù)提示勾選需要的部分。在本例中,我們選擇了Messages表作為實(shí)體,并選擇”Enable editing”,這樣在生成的類中會初始包括Get,Insert,Update,Delete 4個(gè)基本的實(shí)體操作方法
    未命名8
  8. 完成上面的操作后,會在Web項(xiàng)目下生成RdChat_DomainService.cs類。
    Code

    NET技術(shù)Microsoft .NET RIA Services快速上手,轉(zhuǎn)載需保留來源!

    鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 麻豆视频大全 | 影音先锋国产系列精品 | 成人美女免费网站视频 | 91丝袜美腿高跟国产极品老师 | 女子十八毛片 | 美女视频黄视频 | 好好的日视频www | 加勒比色综合久久久久久久久 | 色播六月 | 加勒比免费视频 | 九九视频高清视频免费观看 | 免费在线色 | 美女又胸大又黄的网站 | 天天色天天干天天射 | 色播视频在线观看 | 久久久久久久久网站 | 国语对白在线观看 | 婷婷六月丁 | 午夜精品久视频在线观看 | 正在播放国产乱子伦视频 | 黄色免费在线观看视频 | 久久青草免费91线频观看站街 | 中文字幕国产剧情 | 国产精品午夜免费观看网站 | 日韩精品一区二区三区视频网 | 狠狠色伊人亚洲综合成人 | 成人小视频免费在线观看 | 狠狠伊人 | 欧美日韩乱国产 | 视频区小说区图片区激情 | 狠狠综合欧美综合欧美色 | 男人靠女人视频无遮挡大全 | 国产精品综合在线 | 亚洲欧美精品 | 91久久福利国产成人精品 | 思思九九热| 国产精品夜色视频一区二区 | 91精品福利视频 | 夜夜揉揉日日人人视频 | 亚洲一区第一页 | 国产男人女人做性全过程视频 |