/// <summary> /// 构造Hadnler /// </summary> /// <param name="Entity"></param> /// <param name="handler"></param> public EntityHandler(T Entity, IDataBaseHandler handler) { IORMAdapter Adapter = ORMAdapterCreator.GetORMAdapter(handler.DbContext.ConnectionInfo.DataServerType); m_SQLBuilder = Adapter.CreateSQLBuilder(Entity, Adapter); m_Handle = handler; m_Entity = Entity; }
/// <summary> /// 获取ORM适配器 /// </summary> /// <param name="dataServerType"></param> /// <returns></returns> public static IORMAdapter GetORMAdapter(string dataServerType) { IORMAdapter factory = m_FactoryPool[dataServerType] as IORMAdapter; if (factory == null) { dataServerType = ParseAdapterString(dataServerType); factory = ObjectFactory.CreateObject(dataServerType) as IORMAdapter; if (factory == null) { throw new Exception("不被支持的数据库链接类型!"); } m_FactoryPool[dataServerType] = factory; } return(factory); }
/// <summary> /// 创建SQLBuilder对象 /// </summary> /// <param name="Entity"></param> /// <param name="Adapter"></param> /// <returns></returns> public SQLBuilder CreateSQLBuilder(AbstractEntity Entity, IORMAdapter Adapter) { return(new SQLBuilderSQLServer(Entity, Adapter)); }
/// <summary> /// 构造方法 /// </summary> /// <param name="entity"></param> /// <param name="Adapter"></param> public SQLBuilderSQLServer(AbstractEntity entity, IORMAdapter Adapter) : base(entity, Adapter) { }
/// <summary> /// 构造 /// </summary> /// <param name="entity">实体对象</param> /// <param name="DbAdapter">数据库类型</param> public SQLBuilder(AbstractEntity entity, IORMAdapter DbAdapter) : base(entity, DbAdapter) { m_Entity = entity; }
/// <summary> /// 构造 /// </summary> /// <param name="entity"></param> /// <param name="DbAdapter"></param> public ExpSQLBuilder(AbstractEntity entity, IORMAdapter DbAdapter) { m_DBAdapter = DbAdapter; m_Mapping = ORMAdapterCreator.MappingManager.GetMapping(entity.GetType()); }
/// <summary> /// 创建IDataParameters /// </summary> /// <param name="ad"></param> /// <returns></returns> protected IDataParameters CreateDataParameters(IORMAdapter ad) { return(new DataParameters(ad)); }
/// <summary> /// 构造方法 /// </summary> /// <param name="entity"></param> /// <param name="Adapter"></param> public SQLBuilderSQLite(AbstractEntity entity, IORMAdapter Adapter) : base(entity, Adapter) { this._Adapter = Adapter; }
/// <summary> /// 构造方法 /// </summary> /// <param name="entity"></param> /// <param name="Adapter"></param> public SQLBuilderSqlCe(AbstractEntity entity, IORMAdapter Adapter) : base(entity, Adapter) { }