Ver Mensaje Individual
  #5 (permalink)  
Antiguo 03/07/2012, 08:19
Avatar de cgonzalezm
cgonzalezm
 
Fecha de Ingreso: junio-2012
Mensajes: 55
Antigüedad: 12 años, 5 meses
Puntos: 13
Respuesta: Como mantener datos datos en memoria

Nada es lo mejor, porque todo tiene sus pro y sus contras. El problema de la variable de sesión es que requiere memoria heap, especialmente si hay muchos usuarios, pero personalmente creo que es lo mejor para este caso.

Para mantener estados tienes las siguientes alternativas:

- Cadenas de consulta: Ej: aspx?id=1&con=345...
- Estados de vista: ViewState["variable"] = objeto;
- Campos ocultos: <asp:hiddenfield id="hdf" value="mivalor"/>
- Estados de Aplicación: Application["variable"] = objeto;

En cuanto al problema de ingresar varios objetos en la sesión, debes ocupar listas genericas:

List<Factura> listfac = new List<Factura>();

Factura fac1 = new Factura();

fac1.rutComprador = 12345;
fac1.fechaCompra = "22/11/2010";
fac1.nombreComprador = "Camilo Gonzalez";

Factura fac2 = new Factura();

fac2.rutComprador = 12345;
fac2.fechaCompra = "22/11/2010";
fac2.nombreComprador = "Camilo Gonzalez";

listfac.Add(fac1);
listfac.Add(fac2);

Session["Factura"] =listfac;


Luego desde otras páginas llamas así los datos...

List<Factura> Listfac = (List<Factura>)Session["Factura"];