System.Data.DataRow.CopyValuesIntoStore C# (CSharp) Method

CopyValuesIntoStore() private method

private CopyValuesIntoStore ( ArrayList storeList, ArrayList nullbitList, int storeIndex ) : int
storeList System.Collections.ArrayList
nullbitList System.Collections.ArrayList
storeIndex int
return int
        internal int CopyValuesIntoStore(ArrayList storeList, ArrayList nullbitList, int storeIndex)
        {
            int recordCount = 0;
            if (_oldRecord != -1)
            {
                //Copy original record for the row in Unchanged, Modified, Deleted state.
                for (int i = 0; i < _columns.Count; i++)
                {
                    _columns[i].CopyValueIntoStore(_oldRecord, storeList[i], (BitArray)nullbitList[i], storeIndex);
                }
                recordCount++;
                storeIndex++;
            }

            DataRowState state = RowState;
            if ((DataRowState.Added == state) || (DataRowState.Modified == state))
            {
                //Copy current record for the row in Added, Modified state.
                for (int i = 0; i < _columns.Count; i++)
                {
                    _columns[i].CopyValueIntoStore(_newRecord, storeList[i], (BitArray)nullbitList[i], storeIndex);
                }
                recordCount++;
                storeIndex++;
            }

            if (-1 != _tempRecord)
            {
                //Copy temp record for the row in edit mode.                
                for (int i = 0; i < _columns.Count; i++)
                {
                    _columns[i].CopyValueIntoStore(_tempRecord, storeList[i], (BitArray)nullbitList[i], storeIndex);
                }
                recordCount++;
                storeIndex++;
            }

            return recordCount;
        }