public virtual void RemoveDocumento(Documento documento) { if (this._documentos == null) return; this._documentos.Remove(documento); }
public virtual void AdicionaDocumento(Documento documento) { if (documento == null) throw new ExcecaoParametroInvalido("Pessoa.Documento"); //if (!documento.ValidaDocumento()) // throw new ExcecaoValorDocumentoInvalido(documento.TipoDocumento); if (!this.DocumentosPermitidos().Contains(documento.TipoDocumento)) throw new ExcecaoDocumentoNaoPermitido(this.TipoPessoa, documento.TipoDocumento); if (this._documentos == null) this._documentos = new List<Documento>(); if (this._documentos.Contains(documento)) throw new ExcecaoParametroRepetido("Pessoa.Documento"); if (this._documentos.Any(doc => doc.TipoDocumento.Equals(documento.TipoDocumento))) throw new ExcecaoTipoDocumentoDuplicado(documento.TipoDocumento); this._documentos.Add(documento); }