国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

Silverlight 3異步域操作詳解

開發 后端
Silverlight 3的異步域操作支持3種類型域操作:Query,Submit和Invoke。這些操作中的的每一種都有一個相應的操作類型用于描述正在進行中的異步操作。

51CTO推薦:一步一步學Silverlight

在Silverlight 3的異步域操作可謂家常便飯。因此,全面地理解異步域操作相關知識是基于RIA服務技術開發Silverlight應用的必修課。在本文中,我們將以精簡的形式剖析RIA服務編程中異步域操作中涉及的要點并歸納應注意的問題。

1.Silverlight 3異步域操作

DomainContext支持3種類型域操作:Query,Submit和Invoke。這些操作中的的每一種都有一個相應的操作類型用于描述正在進行中的異步操作。例如,當一個查詢加載到一個DomainContext中,異步的Load調用將立即返回一個LoadOperation實例。請參考如下代碼:

  1. HRContext _ctxt = new HRContext();   
  2. var query = from e in _ctxt.GetEmployeesQuery()   
  3. where e.ManagerID == 1   
  4. select e;   
  5. LoadOperation lo = _ctxt.Load(query);  

上面的操作結果既提供了有關于正在進行的操作的動態的可綁定的狀態信息,也提供了可取消當前操作的支持。同樣地,一個提交請求將返回一個SubmitOperation,而服務操作調用將返回一個InvokeOperation。

接下來,我們將詳細地討論這些Silverlight 3異步域操作及其基類有關知識。

2.基類OperationBase

這個類是所有.NET RIA服務異步操作的基類。這個類實現了接口INotifyPropertyChanged,因此,它的操作狀態成員可以是數據綁定型的,而且當操作的完成狀態改變時,將會引發通知。

基類OperationBase提供了如下成員:

◆IsComplete—一旦操作完成便返回true。注意,當一項操作成功結束,或者是完成但仍帶有錯誤,或者是此操作被取消,都被認為是操作完成。

◆Completed事件—當一項操作完成時引發此事件。

◆UserState—與操作相關的用戶狀態。

◆Cancel()/CanCancel/IsCanceled—如果操作能夠被取消并且沒有完成,那么CanCancel將返回true。在取消操作前,將會檢查CanCancel的值。如果操作已經完成,則將拋出一個異常。

◆Error/HasError—如果操作已經完成,但發生了錯誤,那么HasError的值將為true,而且Error中將包含相應的異常信息。

下面你將會看到,一個域操作中還可以指定一個操作完成對應的回調函數。如果指定了一個回調函數,那么,此回調函數在任何情況下也會被調用,無論此操作是成功結束,還是完成但仍帶有錯誤,還是此操作被取消。

另外值得注意的是,這個回調函數在Completed事件引發以前也會被調用。

3.LoadOperation操作

DomainContext.Load將返回一個LoadOperation的實例。LoadOperation描述了一個正在操作中的異步加載操作。另外,此操作還提供了下面額外的狀態及功能支持:

◆Entities—一個已加載的實體的強類型枚舉類型。一旦調用返回,集合即變為空。注意,此集合實現了接口INotifyCollectionChanged,當操作完成時自新將得到更新。

◆AllEntities—由查詢操作加載的所有實體的集合,而且還包括任何相關聯的實體。注意,此對象也實現了接口INotifyCollectionChanged。一旦調用返回,集合即變為空。注意,此對象也實現了接口INotifyCollectionChanged,當操作完成時自新將得到更新。

◆TotalEntityCount—返回查詢中對應的所有服務器端實體總數。

◆EntityQuery—用于初始化加載操作。

◆MergeOption—加載操作中指定的MergeOption。

下面的代碼展示了如何指定一個加載回調函數:

  1. object state =……//用戶狀態  
  2. LoadOperation lo = _ctxt.Load(query,   
  3. EmployeesLoadedCallback, state);   
  4. ……  
  5. private void EmployeesLoadedCallback(LoadOperation lo)   
  6. {   
  7. if (!lo.HasError)   
  8. {   
  9. object state = lo.UserState;   
  10. foreach (Employee employee in lo.Entities)   
  11. {   
  12. //處理已加載的實例  
  13. }   
  14. }   
  15. else   
  16. {   
  17. //處理錯誤  
  18. }   
  19. }   
  20. 要指定一個完成事件處理器,可以像下面這樣使用LoadOperation.Completed。  
  21. object state =……//用戶狀態  
  22. LoadOperation lo = _ctxt.Load(query, null, state);   
  23. lo.Completed += this.OnEmployeesLoaded;   
  24. ……  
  25. private void OnEmployeesLoaded(object sender, EventArgs e)   
  26. {   
  27. LoadOperation lo = (LoadOperation)sender;   
  28. ……  

當有許多方面(可能是外面的)對當前操作進度感興趣時,那么上面的事件處理器創建是非常有用的。

4.SubmitOperation操作

DomainContext.SubmitChanges方法將返回一個SubmitOperation的實例。其中,SubmitOperation代表了正在進行的異步提交操作;此外,DomainContext.SubmitChanges方法還提供了下面額外的狀態及功能支持:

◆ChangeSet—正在提交的EntityChangeSet

◆EntitiesInError—對于一個產生校驗或沖突錯誤的提交操作來說,它代表了產生錯誤的實體的集合。
另外,回調函數及Completed事件的提交與前面解釋的LoadOperation中的使用方式一致,在此不再贅述。

六、InvokeOperation操作

當調用一個ServiceOperation(服務操作)時,將返回一個強類型的InvokeOperation。這里,T是ServiceOperation操作的返回類型。歸納來看,InvokeOperation操作提供了下面額外的狀態及功能支持:

◆OperationName—要調用的操作的名字

◆Parameters—要操作的名字/值形式的字典參數

◆ValidationErrors—當調用失敗時對應的檢驗錯誤信息的集合

◆Value—ServiceOperation返回的值

另外,回調函數及Completed事件的提交與前面解釋的LoadOperation中的使用方式一致,在此不再贅述。

5.小結

本文簡要地總結了RIA服務開發中Silverlight 3異步域操作支持的3種類型的重要的域操作:Query,Submit和Invoke。其中的每一種操作都有一個相應的操作類型用于描述正在進行中的異步操作。我們對這些RIA服務操作使用參數、注意事項及使用場景等進行了歸納,并給出片斷代碼例證。

【編輯推薦】

  1. Office 2010將使用Silverlight改善用戶體驗
  2. 微軟.NET平臺主管談Silverlight企業級開發
  3. Flash與Silverlight多領域實測對比
  4. 微軟宣稱Silverlight裝機量超過三億
  5. 圖解Silverlight 3的7個新功能
責任編輯:佚名 來源: IT168
相關推薦

2009-07-24 18:03:44

2010-01-04 10:17:16

Silverlight

2010-01-04 16:50:04

Silverlight

2009-09-07 13:25:56

Silverlight

2009-09-07 15:25:24

MySQL數據庫互操作Silverlight

2009-11-18 11:33:23

Silverlight

2011-11-22 09:32:39

ASP.NET

2009-02-02 10:53:34

SilverlightSilverlightRIA

2009-12-31 16:56:40

Silverlight

2009-04-23 10:08:03

Silverlight兼容開發

2009-12-31 10:07:08

Silverlight

2010-01-04 16:17:50

Silverlight

2011-08-30 10:20:41

Silverlight

2010-01-04 13:15:33

跨域引用Silverl

2009-12-31 15:01:07

Silverlight

2009-07-27 09:46:28

Silverlight

2009-12-30 14:36:29

Silverlight

2009-12-29 18:29:09

Silverlight

2009-12-31 17:31:23

Silverlight

2009-04-21 13:14:33

SilverlightWPF擴展
點贊
收藏

51CTO技術棧公眾號

亚洲日本欧美日韩高观看| 亚洲国产美女精品久久久久∴| 亚洲一级影院| av不卡免费在线观看| 日韩av观看网址| 国产日韩精品在线播放| 最全影音av资源中文字幕在线| 久久电影院7| 亚洲第一页在线| 最近中文字幕2019第二页视频| 成人淫片免费视频95视频| 精品国产一区二区三区久久久蜜臀| 欧美尿孔扩张虐视频| 亚洲第一激情av| 日韩一区二区电影在线| 人妻少妇精品无码专区二区| 网站一区二区三区| 午夜激情一区| 91日韩在线专区| 国产91aaa| 天海翼精品一区二区三区| 欧美成人欧美edvon| 成年网站在线播放| 美女一区二区久久| 亚洲免费高清视频在线| 亚洲自拍的二区三区| 午夜精品999| 成人免费网站在线观看| 天堂在线精品| 97久久精品人人澡人人爽缅北| 国产理论电影在线| 4438成人网| 黄色网页在线观看| 日韩精品一区二区三区在线| 人成在线免费视频| 性人久久久久| 久久97精品久久久久久久不卡| 天天影院图片亚洲| 九九99久久精品在免费线bt| 免费福利影院| 91成人精品在线| 欧美日韩伦理片| 久久网站免费观看| 中文字幕一区二区日韩精品绯色| 国产一区不卡在线观看| 禁断一区二区三区在线| 国产亚洲激情在线| 欧美在线视频在线播放完整版免费观看| 国产高清一区二区三区视频| 色婷婷亚洲精品| 97久久超碰福利国产精品…| 欧洲美女精品免费观看视频 | 每日更新在线观看av| 国产人成亚洲第一网站在线播放| 午夜视频一区二区三区| 欧美人体大胆444www| 欧美日韩亚洲激情| 韩国精品视频| 欧美一区二区三区不卡| 大片免费在线观看| 亚洲精品av在线播放| 99riav视频一区二区| 欧美劲爆第一页| 国产探花在线精品一区二区| 亚洲无线码一区二区三区| 2020中文字字幕在线不卡| 亚洲h在线观看| 黄色网址视频在线观看| 亚洲人午夜精品| 国产成人aa在线观看网站站| 国产精品久久久久国产精品日日| 色播在线视频| 欧美一级日韩不卡播放免费| 欧美日韩五区| 亚洲一区二区三区在线看| 国产在线黄色片| 99久久这里只有精品| 日本在线播放不卡| 欧美激情综合在线| 国产黄色大片在线观看| 欧美孕妇与黑人孕交| 亚洲一级影院| 国产三级国产精品国产专区50| 久久国产成人精品| 亚洲最大免费| 一本到不卡免费一区二区| 日本综合视频| 鲁片一区二区三区| 亚洲欧美日韩电影| 污的网站在线观看| 国产精品va在线| 99在线精品视频| 免费在线看黄网站| 国产精品视频中文字幕91| 成人午夜在线影视| 91av在线播放| 国产精品热久久久久夜色精品三区| 久久精品99国产| xfplay精品久久| 蜜桃视频在线观看www社区| 91精品国产丝袜白色高跟鞋| 亚洲色图图片网| 中文字幕一区二区精品区| 先锋影音男人资源| 亚洲成av人片在www色猫咪| 国产精品毛片av| 国产主播在线看| 不卡伊人av在线播放| av影院午夜一区| 91精品久久久久久综合五月天| 四季av一区二区| 精品欧美一区二区精品久久| 亚洲最大在线视频| 亚洲第一免费播放区| 一区二区三区高清在线| 久久精品99久久久| 亚洲九九视频| 老牛影视av一区二区在线观看| 中文av资源在线| www污污在线| 免费裸体视频网站| 久操网在线观看| 日本午夜精品电影| 91青青草免费在线看| 欧美国产中文字幕| 日韩电影第一页| 亚洲成人高清| 成人漫画网站免费| 日本国产精品视频| 一区二区三区四区精品在线视频| 国产视频一二区| 日韩三级电影免费观看| 欧美最顶级丰满的aⅴ艳星| 日韩资源在线观看| 欧美午夜影院一区| 91丨九色丨蝌蚪富婆spa| 亚洲美女一区| 国产毛片视频| 久草精品在线播放| 欧美视频精品一区| 精品国产一区二区三区2021| 一区二区视频国产| 日韩一区二区在线播放| 亚洲欧美中日韩| 狠狠色狠狠色合久久伊人| 亚洲精品一二三区区别| 欧洲亚洲一区二区三区| gay欧美网站| 91九色视频导航| 青青草成人在线| 亚洲免费一在线| 亚洲国产精品va在线看黑人动漫| 疯狂蹂躏欧美一区二区精品| 精品久久久国产| 免费一区二区三区视频导航| 国产成人久久精品一区二区三区| 日本乱码一区二区三区不卡| 欧美深深色噜噜狠狠yyy| 国产精品草莓在线免费观看| 色综合久久精品亚洲国产| 亚洲女人被黑人巨大进入al| 亚洲第一区在线观看| 亚洲色图欧洲色图婷婷| 高清不卡在线观看av| 国产成人鲁色资源国产91色综| 日韩欧美在线不卡| 国产社区精品视频| 精品国产免费久久久久久尖叫 | 国内在线观看一区二区三区| 一本一本a久久| 在线观看av不卡| 国产 欧美 日韩 一区| 2019日本中文字幕| 555www成人网| 97久久天天综合色天天综合色hd | 三级精品视频久久久久| 欧美黄色一区| 免费观看黄色网| 蜜桃视频免费网站| 丁香花在线电影| 国产精品视频自拍| 色噜噜亚洲精品中文字幕| 久久久久久中文| 免费黄色特级片| 九九在线视频| 婷婷五月色综合香五月| 日韩视频久久| 亚洲欧美日韩国产综合在线| 色播久久人人爽人人爽人人片视av| 国产精品久久一区二区三区| 成人免费aaa| 中老年在线免费视频| 亚洲欧美日本视频在线观看| 亚洲精品videosex极品| 2018日韩中文字幕| 色偷偷亚洲第一综合| 欧美日韩黄色| 免费看欧美美女黄的网站| 26uuu成人网一区二区三区| 亚洲欧洲综合另类在线|