public override void Assign(GDMTag source) { GDMCustomEvent sourceObj = (source as GDMCustomEvent); if (sourceObj == null) { throw new ArgumentException(@"Argument is null or wrong type", "source"); } base.Assign(sourceObj); if (sourceObj.fAddress != null) { Address.Assign(sourceObj.fAddress); } fAgency = sourceObj.fAgency; fCause = sourceObj.fCause; fClassification = sourceObj.fClassification; fDate.Assign(sourceObj.fDate); if (sourceObj.fPlace != null) { Place.Assign(sourceObj.fPlace); } fReligiousAffilation = sourceObj.fReligiousAffilation; fRestriction = sourceObj.fRestriction; if (sourceObj.fNotes != null) { AssignList(sourceObj.fNotes, Notes); } if (sourceObj.fSourceCitations != null) { AssignList(sourceObj.fSourceCitations, SourceCitations); } if (sourceObj.fMultimediaLinks != null) { AssignList(sourceObj.fMultimediaLinks, MultimediaLinks); } }