• 大叔 EF 来分析 EntityFrameworks.Data.Core 2



    Extensions

    1
    DbCommand拦截器扩展
    DbCommandInterceptorExtensions

    2
    Class for IQuerable extensions methods
     Include method in IQueryable ( base contract for IObjectSet ) is
     intended for mock Include method in ObjectQuery{T}.
     Paginate solve not parametrized queries issues with skip and take L2E methods

    IQueryableExtensions

    3
    ObjectContext扩展方法
    ObjectContextExtensions

    4
    sql函数的扩展类

    SqlFunctionExtensions


     ----------------------------------------------------------------------------
    DbContextRepository<TEntity>

         DbContext上下文仓储功能类,领域上下文可以直接继承它
         生命周期:数据上下文的生命周期为一个HTTP请求的结束
         相关说明:
        /// 1 领域对象使用声明IRepository和IExtensionRepository接口得到不同的操作规范
        /// 2 可以直接为上下注入Action<string>的委托实例,用来记录savechanges产生的异常
        /// 3 可以订阅BeforeSaved和AfterSaved两个事件,用来在方法提交前与提交后实现代码注入
        /// 4 所有领域db上下文都要继承iUnitWork接口,用来实现工作单元,这对于提升程序性能与为重要


    DbContextRepository<TEntity>

    继承:  IExtensionRepository<TEntity>

    约束 where TEntity : class

    -------------------------------------------------------------------
    MemorySet<TEntity>

      /// In memory IObjectSet. This class is intended only
        /// for testing purposes.
    继承  IObjectSet<TEntity>
    约束 where TEntity : class
    -------------------------------------------------------------------


    MockRepository<TEntity>
    模拟测试数据上下文,它的生命周期为一个调试上下文的结束
    继承 IExtensionRepository<TEntity> 扩展的Repository操作规范


    -------------------------------------------------------------------

    ObjectContextRepository<T>

     /// EF ORM 操作功能类
     /// 它不是抽象类,它在基础设施层会以基类或者功能对象的方式出现

    继承 IExtensionRepository<TEntity>  扩展的Repository操作规范

  • 相关阅读:
    关于Faster-RCNN训练细节
    tensorflow 使用tfrecords创建自己数据集
    深度学习(tensorflow) —— 自己数据集读取opencv
    Tensorflow常见函数case argmax equal
    pandas dataframe类型操作
    celery 启动命令
    pipenv 虚拟环境新玩法
    拉取远程分支
    odoo 开发 context 上下文的用法
    odoo 二次开发的方法
  • 原文地址:https://www.cnblogs.com/ganmk--jy/p/5370141.html
Copyright © 2020-2023  润新知