回到目录

返回异步与并行目录

在写完仓储接口的改造改造后,总觉得有个代码的坏味道,这种味道源于它的DRP,即重复的代码太多了,即异步操作和同步操作其实只是在insert,update和delete上有所不同,获取数据的方法都是一样的,所以,我最后决定,将异步的接口进行改造,让它更加合理,方法后都加上Async的后缀,看上去也更像是个异步方法,呵。

改造后的异步接口

  /// <summary>
/// 异步操作
/// 基础的数据操作规范
/// 与ORM架构无关
/// </summary>
/// <typeparam name="TEntity"></typeparam>
public interface IRepositoryAsync<TEntity>
where TEntity : class
{ /// <summary>
/// 添加实体并提交到数据服务器
/// </summary>
/// <param name="item">Item to add to repository</param>
Task InsertAsync(TEntity item); /// <summary>
/// 移除实体并提交到数据服务器
/// 如果表存在约束,需要先删除子表信息
/// </summary>
/// <param name="item">Item to delete</param>
Task DeleteAsync(TEntity item); /// <summary>
/// 修改实体并提交到数据服务器
/// </summary>
/// <param name="item"></param>
Task UpdateAsync(TEntity item); /// <summary>
/// 添加集合[集合数目不大时用此方法,超大集合使用BulkInsert]
/// </summary>
/// <param name="item"></param>
Task InsertAsync(IEnumerable<TEntity> item); /// <summary>
/// 修改集合[集合数目不大时用此方法,超大集合使用BulkUpdate]
/// </summary>
/// <param name="item"></param>
Task UpdateAsync(IEnumerable<TEntity> item); /// <summary>
/// 删除集合[集合数目不大时用此方法,超大集合使用批量删除]
/// </summary>
/// <param name="item"></param>
Task DeleteAsync(IEnumerable<TEntity> item);
/// <summary>
/// 批量添加,添加之前可以去除自增属性,默认不去除
/// </summary>
/// <param name="item"></param>
/// <param name="isRemoveIdentity"></param>
Task BulkInsertAsync(IEnumerable<TEntity> item, bool isRemoveIdentity); /// <summary>
/// 批量添加
/// </summary>
/// <param name="item"></param>
Task BulkInsertAsync(IEnumerable<TEntity> item); /// <summary>
/// 批量更新
/// </summary>
/// <param name="item"></param>
Task BulkUpdateAsync(IEnumerable<TEntity> item, params string[] fieldParams); /// <summary>
/// 批量删除
/// </summary>
/// <param name="item"></param>
Task BulkDeleteAsync(IEnumerable<TEntity> item);
}

而原来的IExtendRepository同时去继承同步和异步两个仓储接口

aaarticlea/png;base64,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" alt="" />

而在调用上,开发者们更清楚自己使用的是同步还是异步方法

aaarticlea/png;base64,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" alt="" />

回到目录

返回异步与并行目录

EF架构~EF异步改造之路~仓储接口的改造~续的更多相关文章

  1. EF架构~EF异步改造之路~仓储接口的改造

    回到目录 返回异步与并行目录 C#5.0带来了并行编程 {C#1.0托管代码→C#2.0泛型→C#3.0LINQ→C#4.0动态语言→C#5.0异步编程} 随着C#5.0在.net4.5出来之后,它们 ...

  2. EF架构~EF异步改造之路~让DbContextRepository去实现异步接口

    回到目录 返回异步与并行目录 上一讲中,我们定义了三个异步操作接口,这回我们将对它进行实现,而有一个基础知识需要大家清楚,那就是实现接口的方式,一般我们使用默认的方式(隐式实现),这种方法实现的接口方 ...

  3. 关于MVC EF架构及Repository模式的一点心得

    一直都想写博客,可惜真的太懒了或者对自己的描述水平不太自信,所以...一直都是不想写的状态,关于领域驱动的东西看了不少,但是由于自己水平太差加上工作中实在用不到,所以一直处于搁置状态,最近心血来潮突然 ...

  4. EF架构~基于EF数据层的实现

    回到目录 之前写过关于实现一个完整的EF架构的文章,文章的阅读量也是满大的,自己很欣慰,但是,那篇文章是我2011年写的,所以,技术有些不成熟,所以今天把我的2014年写的EF底层架构公开一下,这个架 ...

  5. EF架构~通过EF6的DbCommand拦截器来实现数据库读写分离~终结~配置的优化和事务里读写的统一

    回到目录 本讲是通过DbCommand拦截器来实现读写分离的最后一讲,对之前几篇文章做了一个优化,无论是程序可读性还是实用性上都有一个提升,在配置信息这块,去除了字符串方式的拼接,取而代之的是sect ...

  6. EF架构~为EF DbContext生成的实体添加注释(T5模板应用)

    回到目录 相关文章系列 第八回 EF架构~将数据库注释添加导入到模型实体类中 第二十一回  EF架构~为EF DbContext生成的实体添加注释(T4模板应用) 第二十二回EF架构~为EF DbCo ...

  7. EF架构~数据分批批量提交

    回到目录 对于大数据量提交,包括插入,更新和删除,我始终不建议用EF自带的方法,因为它会增加与数据库的交互次数,一般地,EF的一个上下文在提交时会打开一个数据连接,然后把转换成的SQL语句一条一条的发 ...

  8. EF架构~扩展一个分页处理大数据的方法

    回到目录 最近总遇到大数据的问题,一次性处理几千万数据不实际,所以,我们需要对大数据进行分块处理,或者叫分页处理,我在EF架构里曾经写过类似的,那是在进行BulkInsert时,对大数据批量插入时候用 ...

  9. EF架构~CodeFirst数据迁移与防数据库删除

    回到目录 本文介绍两个概念,防数据库自动删除,这是由于在code first模式下,当数据实体发生变化时,会对原来数据库进行删除,并将新数据表添加进来,但这对于我们的运营环境数据库,是万万不能接受的, ...

随机推荐

  1. 如何让用户只能访问特定的数据库(MSSQL)

    背景 客户的SQL Server实例上有多个厂商的数据库,每个数据库由各自的进行厂进行商维护, 为了限定不同厂商的维护人员只能访问自己的数据库,现需要给各个厂商限定权限,让他们登录SQL Server ...

  2. TCP状态

    TCP状态 TCP连接中包含不同的状态,如何通过状态来判断程序问题尤为重要. 三次握手 图中的connection部分为三次握手. 四次握手 图中的close部分为四次握手. CLOSE_WAIT 服 ...

  3. JWS.Mono如何进行“在线安装”

    这里话就不多说了,使用方法如下: wget http://jhonge.net/down4load/1413998270361/jwsmono_net.sh chmod a+x jwsmono_net ...

  4. Hadoop HDFS 用户指南

    This document is a starting point for users working with Hadoop Distributed File System (HDFS) eithe ...

  5. Atitit 设计模式与算法,与流程的关系

    Atitit 设计模式与算法,与流程的关系 1.1. 设计模式就是算法 就是流程,不同的方面看法不同,抽象方法不同而造成的假象. 软件就是由设计模式累积成的.也可以说算法累计成的.. ,而可以用Vis ...

  6. GO语言的开源库

    Indexes and search engines These sites provide indexes and search engines for Go packages: godoc.org ...

  7. 【原创】开源Math.NET基础数学类库使用(07)常用的数学物理常数

                   本博客所有文章分类的总目录:[总目录]本博客博文总目录-实时更新  开源Math.NET基础数学类库使用总目录:[目录]开源Math.NET基础数学类库使用总目录 1.前 ...

  8. 解决FragmentTabHost切换标题栏变更问题

    现在都流行FragmentTabHost布局.但是所有的fragment都是共享一个actionbar,但是我们又想给每个fragment定义自定义的标题栏.百度google了好久也没有找到解决方案. ...

  9. 【记录】GitHub/TortoiseGit 修改邮箱/提交者

    我使用 Git 客户端工具是 TortoiseGit,在提交更新的时候,不知何时起会出现下面这种情况: 正常提交作者信息显示应该是: 本来也没怎么注意,但是在提交历史中,记录就不显示出来了,也就是在首 ...

  10. PHP的学习--在sublime中使用XDebug(Ubuntu)

    说起来惭愧,自从开始使用Sublime Text之后,再也没有debug过PHP的代码,最近把debug的环境搭建了一下,在这里记录一下. 安装XDebug sudo apt-get install ...