中文字幕精品亚洲无线码二区,国产黄a三级三级三级看三级,亚洲七七久久桃花影院,丰满少妇被猛烈进入,国产小视频在线观看网站

Lind.DDD.Repositories.EF層介(jie)紹~實現DbContext的動態注入

很久很久之前,我寫了Lind.DDD文章,有興趣可以閱讀《Lind.DDD敏捷領域驅動框架》,今天(tian)主要說一(yi)下,如何動(dong)態注入DbContext,而不是new一(yi)個DbContext子類。

  • 配置文件添加上下文注冊
  • 在ef倉儲中添加對IOC構造方法注入的支持
  /// <summary>
  /// 通過構造方法進行DbContext上下文的注入
  /// </summary>
  [InjectionConstructor]
  public EFRepository(DbContext db)
  {
      //Db = new WEBDataEntities();
      Db = db;
      if (this.DataPageSize == 0)
      {
          int dataPageSize;
          int.TryParse(System.Configuration.ConfigurationManager.AppSettings["BulkDataPageSize"] ?? "10000", out dataPageSize);
          this.DataPageSize = dataPageSize;
      }
  }
  • 直接在業務層使用對應的倉儲
public class UserService
{
        IExtensionRepository<User_Data> userDataRepository;
        IExtensionRepository<User_Code> userCodeRepository;
        IExtensionRepository<User_Set> userSetRepository;
        IExtensionRepository<User_Logs> userLogsRepository;

        public UserService()
        {
            userDataRepository = UnityHelper.Instance.GetService<IExtensionRepository<User_Data>>();
            userCodeRepository = UnityHelper.Instance.GetService<IExtensionRepository<User_Code>>();
            userSetRepository = UnityHelper.Instance.GetService<IExtensionRepository<User_Set>>();
            userLogsRepository = UnityHelper.Instance.GetService<IExtensionRepository<User_Logs>>();
        }
}
posted @ 2022-01-24 11:09  張占嶺  閱讀(260)  評論(0)    收藏  舉報