随笔分类 - ORM
摘要:1、缘由 快下班的时候,一同事说在写linq查询语句时where条件中写两时间相减大于某具体天数报错;后来仔细一问,经抽象简化,可以总结为下面的公式: a、当前时间 减去 某表时间字段 大于 某具体天数 ;简化后:常量-变量>常量 ; b、数据库表某时间字段1 减去 数据库某时间字段2 大于 某具体
阅读全文
摘要:一、ORM入口封装 结合上一篇文章与这里的DbProvider().Init()方法,就很明显的知道了是创建一个mssql的实例。那么在DbService的泛型方法中显示提供了单表操作与多表linq查询的入口,其实还存在获取数据库扩展操作的入口。public class DbService ...
阅读全文
摘要:这里涉及到两个关键对象,一个是DbProvider,另一个就是DbFactory。粗略草图如下: 从上图可以看出,开放给消费者的接口就是DbProvider类,不过他主要继承IDbProviderExtend与IDbProvider接口。 IDbProvider接口提供单表操作、多表查询、扩...
阅读全文
摘要:一、数据库提供者接口 /// /// 数据库提供者 /// public interface IDbProvider : IDisposable { /// /// 初始化数据库连接信息 /// /// ...
阅读全文
摘要:一、常见开源ORM框架 比喻:Kerosene ORM,DbLinq,Dapper,DynamicQuery,elinq,glinq,NPoco,Relinq,EF,ServiceStack.OrmLite,IQToolkit,对于这些框架,在单表查询这块支持的还蛮可以,但是对于多表查询的那种...
阅读全文