Foros del Web » Programando para Internet » ASPX (.net) »

Sobre una Session en c#

Estas en el tema de Sobre una Session en c# en el foro de ASPX (.net) en Foros del Web. Que tal a todos, La idea concreta es ingresar una nueva fila en una tabla de Bd de SqlServer. Resulta que tengo un proyecto Web ...
  #1 (permalink)  
Antiguo 01/08/2009, 08:34
 
Fecha de Ingreso: noviembre-2008
Ubicación: Uruguay
Mensajes: 49
Antigüedad: 15 años, 6 meses
Puntos: 1
Exclamación Sobre una Session en c#

Que tal a todos,

La idea concreta es ingresar una nueva fila en una tabla de Bd de SqlServer.

Resulta que tengo un proyecto Web escrito en c# donde seleciono desde un gridview, una fila y cargo los datos de la misma en una Session. Luego debo cargar los datos de esta session en objeto que es una Clase; porque tengo una instancia donde me pide este objeto. ej: Clase a = new Clase(int d, int c,......, Clase pH)
Pero en la capa de datos ademas tengo que extraer parte de ese objeto para utilizar el procedimiento almacenado. Ej: el nombre, o el apellido, etc.

La consulta es la siguiente: Como obtener el dato concreto de esa session en la capa de datos.

Clase_a_=_new_Clase(int d, int c,......, Clase_pH) //en pH viene unos datos donde cedula se encuentra incluido.

Ahora como accedo a Cedula del objeto a en la capa de datos para cargarlo en el sore procedure.

Espero se me haya entendido el objetivo.
  #2 (permalink)  
Antiguo 01/08/2009, 18:12
 
Fecha de Ingreso: noviembre-2008
Ubicación: Uruguay
Mensajes: 49
Antigüedad: 15 años, 6 meses
Puntos: 1
Respuesta: Sobre una Session en c#

Tal ves debo explicarme mejor.
Haber, la idea es agregar en un formulario web lo siguiente. Partiendo que uno de los parámetros a pasar en la instancia es proviene de una session.

Vehiculo num = (Vehiculo)Session["Seleccionar"];

Concesionaria c = new Concesionaria(..., num);

Y luego en la capa de datos donde utilizare el storeProcedure para ingresar el vehículo y agregar la matrícula.

public static int AgregarVehiculo(Vehiculo c)
{
SqlConnection cnn = new SqlConnection(Conexion.STR);
string consulta = "NuevoIngreso";
SqlCommand comando = new SqlCommand(consulta, cnn);
comando.CommandType = CommandType.StoredProcedure;
int afectados = -1;
SqlParameter retorno = new SqlParameter("retorno", SqlDbType.Int);
retorno.Direction = ParameterDirection.ReturnValue;
comando.Parameters.AddWithValue("@matricula", c.???);
...
...
comando.Parameters.Add(retorno);
  #3 (permalink)  
Antiguo 02/08/2009, 19:06
 
Fecha de Ingreso: octubre-2000
Mensajes: 1.692
Antigüedad: 23 años, 6 meses
Puntos: 19
Respuesta: Sobre una Session en c#

Hola.

No se si comprendo bien.

comando.Parameters.AddWithValue("@matricula", c.???);

Acá tu objeto C es una clase, y supongo que tendra una propiedad PUBLIC de nombre matricula o algo así, por lo tanto deberías poner:

comando.Parameters.AddWithValue("@matricula", c.Matricula);
__________________
PD: Con amor, fe, amor a Dios y amistad podemos hacer un mundo mejor!!!!
  #4 (permalink)  
Antiguo 02/08/2009, 21:22
 
Fecha de Ingreso: noviembre-2008
Ubicación: Uruguay
Mensajes: 49
Antigüedad: 15 años, 6 meses
Puntos: 1
De acuerdo Respuesta: Sobre una Session en c#

Cita:
Iniciado por Trulala de cordoba Ver Mensaje
Hola.

No se si comprendo bien.

comando.Parameters.AddWithValue("@matricula", c.???);

Acá tu objeto C es una clase, y supongo que tendra una propiedad PUBLIC de nombre matricula o algo así, por lo tanto deberías poner:

comando.Parameters.AddWithValue("@matricula", c.Matricula);
Primero que nada, gracias por responder.

Lamento no haber sido más claro con la consulta planteada.
Concretamente me refería a que el objeto que esta recibiendo el método viene cargado con otros objetos seleccionados de una fila de gridview, es decir, uno de esos parámetros es otro objeto cargado desde una session.
Expongo mejor con el código haber si se entiende, además que es la solución; por que lo pude solucionar por cierto.

Código:
         ESTO EN EL FORMULARIO Y LA SESSION VIENE DE UNA SELECCION DEL  VEHICULO EN GRIDVIEW QUE LO CARGO EN UN OBJETO DEL TIPO MENCIONADO
VALE ACLARAR QUE LA SESSION VIENE CON 'nro, modelo, etc, adema de matricula'
         protected void btnIngresar_Click(object sender, EventArgs e)
         {
              Vehículo matricula = (Vehículo)Session["Seleccionar"];
              ....
              ....
         
          Concesionaria c = new Concesionaria(......., matricula);
        }
        
        LO QUE VIENE ES EN LA CAPA DE DATOS. PERO NECESITO ACCEDER A PARTE DE LA SESSION DON SE ENCUENTRA MATRICULA Y AQUI MARCO COMO LOGRO ACCEDER Y LO MARCO subrayado, en negrita y cursiva.
        public static int AgregarALista(Concesionaria n)
        {
                SqlConnection cnn = new SqlConnection(Conexion.STR);
                string consulta = "Alta";
                SqlCommand comando = new SqlCommand(consulta, cnn);
                comando.CommandType = CommandType.StoredProcedure;
                int afectados = -1;
                SqlParameter retorno = new SqlParameter("retorno", SqlDbType.Int);
                retorno.Direction = ParameterDirection.ReturnValue;
                comando.Parameters.AddWithValue("@matricula", n.matricula.Asocia.matricula);
                ....
                ....
        }
Tal ves no mencione que este procedia de una asociacion entre clases y que dependía de Asocia ya que matricula no procede originalmente de Vehículo.

Espero haber sido más claro, y sino buscare otra forma.

sds
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:14.