public override void GetObjectData(SerializationInfo info, StreamingContext context)
{
if (info == null)
{
throw new ArgumentNullException(nameof(info));
}
Contract.EndContractBlock();
// Our serialization code hasn't been fully tweaked to be safe
// for a concurrent writer.
lock (_table.SyncRoot)
{
info.AddValue("ParentTable", _table, typeof(Hashtable));
}
}