public ViewResult ViewCrud(DescriptorDeCrud <TElemento> descriptor) { if (NegociosDeSe.NegocioDeUnDto(typeof(TElemento).FullName) != enumNegocio.No_Definido) { descriptor.negocioDtm = GestorDeNegocios.LeerNegocio(GestorDeElementos.Contexto, NegociosDeSe.NegocioDeUnDto(typeof(TElemento).FullName)); } var gestorDeVista = GestorDeVistaMvc.Gestor(GestorDeElementos.Contexto, GestorDeElementos.Mapeador); var vista = gestorDeVista.LeerVistaMvc($"{descriptor.Controlador}.{descriptor.Vista}"); descriptor.Creador.AbrirEnModal = vista.MostrarEnModal; descriptor.Editor.AbrirEnModal = vista.MostrarEnModal; ApiController.CumplimentarDatosDeUsuarioDeConexion(GestorDeElementos.Contexto, GestorDeElementos.Mapeador, HttpContext); descriptor.GestorDeUsuario = GestorDeUsuarios.Gestor(GestorDeElementos.Contexto, GestorDeElementos.Mapeador); descriptor.UsuarioConectado = descriptor.GestorDeUsuario.LeerRegistroCacheado(nameof(UsuarioDtm.Login), DatosDeConexion.Login, errorSiNoHay: true, errorSiHayMasDeUno: true, aplicarJoin: false); var destino = $"{(descriptor.RutaBase.IsNullOrEmpty() ? "" : $"../{descriptor.RutaBase}/")}{descriptor.Vista}";
protected virtual enumModoDeAccesoDeDatos LeerModoDeAccesoAlElemento(TElemento elemento) { return(GestorDeNegocios.LeerModoDeAccesoAlElemento(Contexto, NegociosDeSe.NegocioDeUnDto(elemento.GetType().FullName), elemento.Id)); }
private List <Dictionary <string, object> > ElementosLeidos(List <TElemento> elementos) { var listaDeElementos = new List <Dictionary <string, object> >(); if (elementos.Count > 0) { PropertyInfo[] propiedades = elementos[0].GetType().GetProperties(); foreach (TElemento elemento in elementos) { var registro = new Dictionary <string, object>(); foreach (PropertyInfo propiedad in propiedades) { object valor = elemento.GetType().GetProperty(propiedad.Name).GetValue(elemento); registro[propiedad.Name] = valor == null ? "" : valor; } var ma = GestorDeElementos.LeerModoDeAccesoAlElemento(DatosDeConexion.IdUsuario, NegociosDeSe.NegocioDeUnDto(elemento.GetType().FullName), registro[nameof(ElementoDto.Id)].ToString().Entero()); registro[nameof(Resultado.ModoDeAcceso)] = ma.Render(); listaDeElementos.Add(registro); } } return(listaDeElementos); }