Create() static private method

static private Create ( IDataReader dataReader, bool returnProviderSpecificTypes ) : DataReaderContainer
dataReader IDataReader
returnProviderSpecificTypes bool
return DataReaderContainer
        internal int LoadDataRowChapters(DataRow dataRow)
        {
            int num2   = 0;
            int length = this._chapterMap.Length;

            for (int i = 0; i < length; i++)
            {
                if (this._chapterMap[i])
                {
                    object obj2 = this._readerDataValues[i];
                    if ((obj2 != null) && !Convert.IsDBNull(obj2))
                    {
                        this._readerDataValues[i] = null;
                        using (IDataReader reader = (IDataReader)obj2)
                        {
                            if (!reader.IsClosed)
                            {
                                DataColumn column;
                                object     obj3;
                                if (this._indexMap == null)
                                {
                                    column = this._dataTable.Columns[i];
                                    obj3   = dataRow[column];
                                }
                                else
                                {
                                    column = this._dataTable.Columns[this._indexMap[i]];
                                    obj3   = dataRow[column];
                                }
                                string srcTable = this._tableMapping.SourceTable + this._fieldNames[i];
                                DataReaderContainer dataReader = DataReaderContainer.Create(reader, this._dataReader.ReturnProviderSpecificTypes);
                                num2 += this._adapter.FillFromReader(this._dataSet, null, srcTable, dataReader, 0, 0, column, obj3);
                            }
                        }
                    }
                }
            }
            return(num2);
        }