public PersonaConPerfiles Consultar(int idPersona, string nombreUsuario) { var personaConPerfiles = new PersonaConPerfiles(); var persona = repositorio.ConsultarPorId <Persona>(idPersona); if (persona.Id != 0) { personaConPerfiles.PopulateWith(persona); var usuarioPerfilIds = repositorio .Consultar <UsuarioPerfil>(q => q.NombreUsuario == nombreUsuario) .Select(x => x.PerfilId).ToList(); personaConPerfiles.Perfiles = repositorio .Consultar <Perfil>(q => usuarioPerfilIds.Contains(q.Id)); var personaRegionalIds = repositorio .Consultar <PersonaRegional>(q => q.PersonaId == idPersona) .Select(x => x.RegionalId) .ToList(); personaConPerfiles.Regionales = repositorio.Consultar <Regional>( q => personaRegionalIds.Contains(q.Id) || q.Id == persona.RegionalId ); } return(personaConPerfiles); }
static Func <PlantillaEncuesta> GetPlantillaEncuesta(int entidadId, IConsultaEntidad <PlantillaEncuesta> repo) { PlantillaEncuesta entidadAlmacenada = null; Func <PlantillaEncuesta> func = () => { if (entidadAlmacenada == null) { entidadAlmacenada = repo.ConsultarPorId(entidadId); } return(entidadAlmacenada); }; return(func); }
public Func <TEntidad> GetEntityById(int entidadId) { TEntidad entidadAlmacenada = default(TEntidad); Func <TEntidad> func = () => { if (entidadAlmacenada == null) { entidadAlmacenada = repositorio.ConsultarPorId(entidadId); } return(entidadAlmacenada); }; return(func); }