public DateTime?ReadDate() { if (mReader == null) { throw new ObjectDisposedException(null); } if (mIndex == mCount) { throw new InvalidOperationException(); } if (mVector[mIndex]) { // FILETIME = 100-nanosecond intervals since January 1, 1601 (UTC) var date = mReader.ReadInt64Internal(); mIndex += 1; return(DateTime.FromFileTimeUtc(date)); } else { mIndex += 1; return(null); } }
public long?ReadNumber() { if (mReader == null) { throw new ObjectDisposedException(null); } if (mIndex == mCount) { throw new InvalidOperationException(); } if (mVector[mIndex]) { var number = mReader.ReadInt64Internal(); mIndex += 1; return(number); } else { mIndex += 1; return(null); } }