public BindingList<RichiedentePraticaDTO> GetSoggettiAttiviByCondominio(CondominioDTO condominio, IFornitoreService fornitoreService, IReferenteService referenteService, IPersonaService personaService) { BindingList<FornitoreDTO> fornitoriCompleti = fornitoreService.GetFornitoriCompletiByCondominio(condominio); BindingList<PersonaListaDTO> listaPersone = personaService.GetAll(); IList<RichiedentePraticaDTO> fornitori = (from fornitore in fornitoriCompleti select new RichiedentePraticaDTO() { Id = fornitore.ID, DisplayNominativo = fornitore.DisplayNominativo, IdCondominio = condominio.ID, IdPersona = fornitore.PersonaRiferimento.ID, Tipo = fornitore.DescrizioneTipoFornitore }).ToList(); IList<RichiedentePraticaDTO> referenti = (from referente in referenteService.GetAllEffettivi() join persona in listaPersone on referente.PersonaId equals persona.ID select new RichiedentePraticaDTO() { Id = referente.ID, DisplayNominativo = referente.NominativoPersona, IdCondominio = condominio.ID, IdPersona = referente.PersonaId, Tipo = "Referente" }).ToList(); ISet<RichiedentePraticaDTO> soggetti = new HashedSet<RichiedentePraticaDTO>(referenti); soggetti.AddAll(fornitori); return new BindingList<RichiedentePraticaDTO>(soggetti.ToList()); }