Esempio n. 1
0
 public IExecutor GetQueryExecutor <R>(SqlQuery aQuery, ResultBinder <R> aBinder) where R : class
 {
     if (aQuery is HasCache && aBinder is CacheBinder <R> )
     {
         return(GetExecuteQuery((HasCache)aQuery, (HasMaximum)aQuery));
     }
     return(new DefaultExecutor());
 }
Esempio n. 2
0
 public void execute <R>(SqlQuery aQuery, ResultBinder <R> aBinder)  where R : class
 {
     try
     {
         Tracker.SaveQuery(aQuery);
         QueryExecutorFactory.Current.GetQueryExecutor(aQuery, aBinder).Execute(new QueryInfo <R>(this, aBinder, aQuery));
     }
     catch (Exception anExc)
     {
         logger.Error(anExc.Message, anExc);
         throw anExc;
     }
 }
Esempio n. 3
0
        private List <T> Select <T>(ISelectQuery aQuery, ResultBinder <T> aBinder, OnEntitySelect <T> onExecute) where T : class, new()
        {
            List <T> dataList = new List <T>();
            int      i        = 0;

            aBinder.OnBind =
                delegate(T anEntity)
            {
                dataList.Add(anEntity);
                if (onExecute != null)
                {
                    onExecute(anEntity, i);
                    i++;
                }
            };
            Connetion.execute(aQuery, aBinder);
            return(dataList);
        }
Esempio n. 4
0
 public QueryInfo(DBConnection aConnection, ResultBinder <R> aBinder, SqlQuery anSqlQuery)
 {
     Connection = aConnection;
     Binder     = aBinder;
     Query      = anSqlQuery;
 }
Esempio n. 5
0
 public void Execute <R>(SqlQuery aQuery, ResultBinder <R> aResultBinder) where R : class
 {
     Connetion.execute(aQuery, aResultBinder);
 }