Пример #1
0
 // Methods
 internal ObjectReader(ObjectReaderSession <TDataReader> session, NamedColumn[] namedColumns,
                       object[] globals, object[] arguments, int nLocals, bool disposeSession,
                       Func <ObjectMaterializer <TDataReader>, TObject> fnMaterialize)
     : base(session, namedColumns, globals, arguments, nLocals)
 {
     this.disposeSession = disposeSession;
     this.fnMaterialize  = fnMaterialize;
 }
Пример #2
0
            public IObjectReader Create(DbDataReader dataReader, bool disposeDataReader, IReaderProvider provider,
                                        object[] parentArgs, object[] userArgs, ICompiledSubQuery[] subQueries)
            {
                var session = new ObjectReaderSession <TDataReader>((TDataReader)dataReader, provider,
                                                                    parentArgs, userArgs, subQueries);

                return(session.CreateReader(fnMaterialize, namedColumns, globals, nLocals,
                                            disposeDataReader));
            }
Пример #3
0
 // Methods
 protected ObjectReaderBase(ObjectReaderSession <TDataReader> session,
                            NamedColumn[] namedColumns, object[] globals,
                            object[] arguments, int nLocals)
 {
     this.session = session;
     services     = session.Provider.Services;
     DataReader   = session.DataReader;
     Globals      = globals;
     Arguments    = arguments;
     if (nLocals > 0)
     {
         Locals = new object[nLocals];
     }
     if (this.session.IsBuffered)
     {
         Buffer();
     }
     Ordinals = GetColumnOrdinals(namedColumns);
 }