Exemple #1
0
        public static DbEnumeratorData <ExpandoObject> ExecDynCmd(this Context db, SqlCommand execCmd
                                                                  , Action <SqlCommand> setupCmd = null
                                                                  , Action <Exception> onError   = null)
        {
            var proc = new SqlProcText
            {
                CmdText    = execCmd.CommandText,
                Context    = db,
                Connection = db.SqlConnection,
                Param      = null
            };

            SqlDataReader        readerGet  = null;
            Func <SqlDataReader> lazyReader = LazyReader(proc, (reader) => readerGet = reader, setupCmd, onError);
            var numeratorObj = new DbEnumeratorData <ExpandoObject>(lazyReader);

            if (numeratorObj == null)
            {
                return(DbEnumeratorData <ExpandoObject> .Empty);
            }

            if (!numeratorObj.ReaderAvailable)
            {
                numeratorObj.Reset();
            }
            return(numeratorObj);
        }
Exemple #2
0
 public void Reset()
 {
     if (Numerator != null && Numerator.Current != null)
     {
         Numerator.Reset();
         Reader = Numerator.Reader;
     }
     if (Reader != null)
     {
         helper = helper ?? new DbMapperDyn(Reader);
     }
 }