<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      從微軟的DBML文件中我們能學(xué)到什么(它告訴了我們什么是微軟的重中之重)~五 LINQ實(shí)體類中對屬性的賦值,變化前與變化后SendPropertyChanging與SendPropertyChanged

      回到目錄

      首先從這一篇的文章標(biāo)題中可以看出,主要是講dbml中對實(shí)體的屬性賦值的相關(guān)知識,還有SendPropertyChanging與SendPropertyChanged這兩個(gè)方法,從第五講和第六講中我們看到標(biāo)題有些雷同,是的,但我講它們的側(cè)重點(diǎn)不同,第五講主要講實(shí)體中屬性賦值的過程,此時(shí)會用到SendPropertyChanging與SendPropertyChanged這兩個(gè)方法,而第六講,主要是講這兩個(gè)方法的作用,先透露一下,主要講事件觸發(fā)機(jī)制的,呵呵。

      
      
       1       public string ExceptionID
       2        {
       3            get
       4            {
       5                return this._ExceptionID;
       6            }
       7            set
       8            {
       9                if ((this._ExceptionID != value))
      10                {
      11                    this.OnExceptionIDChanging(value);
      12                    this.SendPropertyChanging();
      13                    this._ExceptionID = value;
      14                    this.SendPropertyChanged("ExceptionID");
      15                    this.OnExceptionIDChanged();
      16                }
      17            }
      18        }
      
      

       

       

      這是一種其中的dbml實(shí)體類中的代碼片段,它主要是為ExceptionID這個(gè)屬性賦值,get部分沒什么說的,已經(jīng)返回這個(gè)_ExceptionID字段的值,主要看set部分,它的工作流程是:

      1 判斷_ExceptionID變量是否等于原來的值

      2 如果不等,調(diào)用OnExceptionIDChanging方法,表示開始修改這字段,它是一個(gè)分部方法,可以由開發(fā)人員根據(jù)自己的邏輯去實(shí)現(xiàn)它

      3 調(diào)用屬性將要被修改方法SendPropertyChanging

      4 對字段進(jìn)行賦值

      5 調(diào)用屬性已經(jīng)被修改方法SendPropertyChanged,并告訴方法修改的字段為“ExceptionID”

      6 OnExceptionIDChanged,表示這個(gè)字段已經(jīng)修改完成

       

      我們主要看一下SendPropertyChanging和SendPropertyChanged

      
      
       1      protected virtual void SendPropertyChanging()
       2       {
       3           if ((this.PropertyChanging != null))
       4           {
       5               this.PropertyChanging(this, emptyChangingEventArgs);
       6           }
       7       }
       8 
       9       protected virtual void SendPropertyChanged(String propertyName)
      10       {
      11           if ((this.PropertyChanged != null))
      12           {
      13               this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
      14           }
      15       }
      
      

       

       

      這兩個(gè)方法是派生自INotifyPropertyChanging和INotifyPropertyChanged這兩個(gè)接口的,主要作用是通知客戶端某個(gè)屬性將要被修改和已經(jīng)被修改,在這兩個(gè)

      方法體中,事實(shí)上是實(shí)現(xiàn)了觸以下兩個(gè)事件的作用

      
      
      1    public event PropertyChangingEventHandler PropertyChanging;
      2 
      3    public event PropertyChangedEventHandler PropertyChanged;

       

      也就是說,只要屬性被修改,那么這兩個(gè)事實(shí)將被觸發(fā),那linqtosql為我們提供這個(gè)功能有什么作用呢?請看下回。

      回到目錄

      posted @ 2012-03-27 23:30  張占嶺  閱讀(1873)  評論(1)    收藏  舉報(bào)
      主站蜘蛛池模板: 无人区码一码二码三码区| 盘锦市| 四虎成人在线观看免费| 久青草精品视频在线观看| 女人喷液抽搐高潮视频| 老女老肥熟国产在线视频| 国产一区二区不卡精品视频| 久久夜色精品亚洲国产av| 少妇高潮太爽了在线视频| 肉大捧一进一出免费视频| 99久久精品久久久久久婷婷| 国产日韩一区二区在线| 熟妇人妻系列aⅴ无码专区友真希 亚洲精品喷潮一区二区三区 | 九九热这里只有精品在线| 91久久精品美女高潮不断 | 久久国产成人精品av| 国内自产少妇自拍区免费| 2021国产成人精品久久| 国产亚洲日韩av在线播放不卡| 欧美激情一区二区久久久| 久久av中文字幕资源网| 亚洲欧美日本久久网站| 天天摸夜夜摸夜夜狠狠添| 九九热在线这里只有精品| 午夜福利偷拍国语对白| 色欲综合久久中文字幕网| 日韩精品一区二区三区在| 国产成人a在线观看视频| 精品人妻少妇一区二区三区在线 | 国产乱子伦一区二区三区四区五区 | 亚洲成人动漫av在线| 蜜臀久久99精品久久久久久| 亚洲日本精品一区二区| 人妻熟女欲求不满在线 | 色视频不卡一区二区三区| 四虎永久免费高清视频| 亚洲精品久久一区二区三区四区| 国产自拍偷拍视频在线观看| 亚洲第一国产综合| 日日爽日日操| 成人乱码一区二区三区四区|