private void VerifyValueFromStorage(DataColumn column, DataRowVersion version, object valueFromStorage)
{
// ignore deleted rows by adding "newRecord != -1" condition - we do not evaluate computed rows if they are deleted
if (column.DataExpression != null && !_inChangingEvent && _tempRecord == -1 && _newRecord != -1)
{
// for unchanged rows, check current if original is asked for.
// this is because by design, there is only single storage for an unchanged row.
if (version == DataRowVersion.Original && _oldRecord == _newRecord)
{
version = DataRowVersion.Current;
}
Debug.Assert(valueFromStorage.Equals(column.DataExpression.Evaluate(this, version)),
"Value from storage does lazily computed expression value");
}
}
}