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

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

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

      說說IUnitOfWork~認識IUnitOfWork,為什么要出現IUnitOfWork接口

      回到目錄

      第一講 認識IUnitOfWork,為什么要出現IUnitOfWork接口
      第二講 Linq to Sql與EntityFrameworks中的SubmtChanges()發生了什么事
      第三講 方法完整性與統一提交不沖突
      第四講 DbContext對象的創建應該向BLL層公開
      第五講 我的IUnitOfWork+Repository架構

           今天愉點時間,說說IUnitOfWork,它事實上是NHibernate上的東西,這里只是借一下它的思想,把咱們的EF和LinqToSql也優化一下,呵呵!對于IUnitOfWork它的中文是操作單元的意思,顧名思義,就是將多個操作放在一個單元中,把操作原子化,概念上有點像事務,但事實上并不是,它主要是指對數據庫通信來說,統一完成一次提交,這對于優化系統的性能是非常必要的,接下來,我會分5講來說明一下IUnitOfWork。

      一  認識IUnitOfWork

      我們一般對IUnitOfWork接口會定義如下元素:

          /// <summary>
          /// 工作單元
          /// 提供一個保存方法,它可以對調用層公開,為了減少連庫次數
          /// </summary>
          public interface IUnitWork
          {
              /// <summary>
              /// 直接提交到數據庫
              /// </summary>
              void Save();
              /// <summary>
              /// 是否不提交到數據庫,默認值設為false,即提交到數據庫
              /// 它通常于數據上下文基類去實現
              /// </summary>
              /// <returns></returns>
              bool IsNotSubmit { get; set; }
          }

      而這個接口往往由數據上下文去實現,我以entityframeworks為例,當你建立一個EDMX數據模型后,你可以再建立一個類文件來作為它的分部類,并實現IUnitWork接口,代碼如下:

      namespace Domain.Entities
      {
          public partial class backgroundEntities : Domain.Core.IUnitWork
          {
              #region IUnitWork 成員
      
              public void Save()
              {
               this.SaveChanges();
              }
      
              public bool IsNotSubmit
              {
                  get;
                  set;
              }
      #endregion
          }
      }

      而對于調用方來說,它通常是在具體的Repository類中去實現的,最常見的就是“構造器注入”的方式,看代碼:

      事實上,在建立OrderRepository實例時,需要將實現了IUnitWork接口的數據上下文對象傳進來,然后統一進行操作。在BLL層調用DAL層時,你可以將多個DAL層的Repository對象進行組件調用,只要保證你的IUnitwork上下文對象是唯一的就可以了。

      二  為什么要出現IUnitOfWork接口

      對于這個問題,一句話,就是為了減少與數據庫通訊的次數,這一點在以后的課程中會著重講解的,今天就不多說了!

      祝各位晚安!

      回到目錄

      posted @ 2013-03-12 22:40  張占嶺  閱讀(11088)  評論(1)    收藏  舉報
      主站蜘蛛池模板: 久久综合九色综合97伊人| 国产不卡av一区二区| 国产精品久久久久久无毒不卡| 婷婷四房播播| 国内精品免费久久久久电影院97| 尤物视频色版在线观看| 黄色A级国产免费大片视频| 亚洲av成人网人人蜜臀| 日本免费一区二区三区日本| 亚洲精品入口一区二区乱| 成全影视大全在线观看| 熟女一区| 亚洲日韩成人无码不卡网站| 亚洲av影院一区二区三区| 97一期涩涩97片久久久久久久| 一边添奶一边添p好爽视频| 又黄又爽又无遮挡免费的网站| 制服jk白丝h无内视频网站| 精品视频不卡免费观看| 久热这里只有精品视频六| 亚洲成精品动漫久久精久| 91青青草视频在线观看| 九九热99精品视频在线| 国产午夜福利片在线观看| 999精品色在线播放| 老太脱裤子让老头玩xxxxx| 97人洗澡人人澡人人爽人人模| 加勒比无码人妻东京热| 国产真正老熟女无套内射| 日韩少妇内射免费播放| 九九成人免费视频| 国产激情av一区二区三区| 久久久亚洲欧洲日产国码αv| 亚洲精品一区国产欧美| 久久综合色天天久久综合图片| 亚洲人成绝网站色www| a级免费视频| 亚洲国产精品久久综合网| 人妻少妇偷人一区二区| 玩弄丰满少妇人妻视频| 精品国产午夜福利在线观看|