public List <ArchivoGeneral> Listar(ArchivoGeneral archivoGeneral) { using (InoBD db = new InoBD()) { var query = (from a in db.Archivos where ((a.HistoriaClinica == archivoGeneral.HistoriaClinica) || (a.NroDocumento == archivoGeneral.NroDocumento)) && (archivoGeneral.IdServicio == 0 || a.IdServicio == archivoGeneral.IdServicio) && (archivoGeneral.TipoArchivo == "" || a.TipoArchivo == archivoGeneral.TipoArchivo) && (a.EsActivo == true) select new { IdArchivo = (archivoGeneral.IdServicio == 0 && archivoGeneral.TipoArchivo == "jpg") ? 0 : a.IdArchivo, TipoArchivo = a.TipoArchivo, IdServicio = a.IdServicio, HistoriaClinica = a.HistoriaClinica, NombreArchivo = (archivoGeneral.IdServicio == 0 && archivoGeneral.TipoArchivo == "jpg") ? string.Empty : a.NombreArchivo, RutaCompleta = (archivoGeneral.IdServicio == 0 && archivoGeneral.TipoArchivo == "jpg") ? string.Empty : a.RutaCompleta, EsActivo = (archivoGeneral.IdServicio == 0 && archivoGeneral.TipoArchivo == "jpg") ? true : a.EsActivo, FechaCreacion = (archivoGeneral.IdServicio == 0 && archivoGeneral.TipoArchivo == "jpg") ? DateTime.Now : a.FechaCreacion } ).Distinct().OrderByDescending(x => x.FechaCreacion).ToList(); return(query.Select(x => new ArchivoGeneral { IdArchivo = x.IdArchivo, TipoArchivo = x.TipoArchivo, IdServicio = x.IdServicio, HistoriaClinica = x.HistoriaClinica, NombreArchivo = x.NombreArchivo, ArchivoBinario = (string.IsNullOrEmpty(x.RutaCompleta)) ? string.Empty : Convert.ToBase64String(File.ReadAllBytes(x.RutaCompleta)), EsActivo = x.EsActivo, Fecha = x.FechaCreacion.ToString("dd/MM/yyyy") }).ToList()); } }
public List <ArchivoGeneral> ListarArchivos(ArchivoGeneral archivoGeneral) { return(_gestorDeArchivos.Listar(archivoGeneral)); }