ASP.NET - Problema con grid view Clases Anidadas

 
Vista:

Problema con grid view Clases Anidadas

Publicado por Yeisson Kevin (1 intervención) el 21/06/2012 20:25:25
Buenas tardes a todos, quisiera hacer una consulta, tengo un problema con el grid view, puesto que quiero mostrar una clase anidada en un formulario A. Yo hago mi busqueda de un caampo en un formulario B con un grid view, hasta ahora eh logrado mostrar mi clase anidada en el grid view, pero cuando quiero pasar los campos de mi formulario B que se muestran en el gridview a mi formulario A, no puedo hacerlo. Yo estoy trabajando con Session, aqui le adjunto mi codigo, si podrian darme una solucion para este problema:


Formulario A:
------------------
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
if (Session["IdPersona"] != null || Session["Nombre"] != null || Session["Apellido"] != null || /*Session["Ciudad"] != null ||*/ Session["FechaIngreso"] != null || Session["Email"] != null || Session["Telefono"] != null || Session["DNI"] != null || Session["Direccion"] != null)
{
btnGrabar.Text = "Actualizar";

txtCodigo.Text = Session["IdPersona"].ToString();
txtNombres.Text = Session["Nombre"].ToString();
txtApellidos.Text = Session["Apellido"].ToString();
//ddlCiudad.SelectedValue = Session["Ciudad"].ToString();
txtFechaIngreso.Text = Session["FechaIngreso"].ToString();
txtEmail.Text = Session["Email"].ToString();
txtTelefono.Text = Session["Telefono"].ToString();
txtDNI.Text = Session["DNI"].ToString();
txtDireccion.Text = Session["Direccion"].ToString();
}
}
}


Formulario B:
------------------

private static List<clsPersona> lstPersonas = new List<clsPersona>();
protected void Page_Load(object sender, EventArgs e)
{

}

protected void btnBuscarApellido_Click(object sender, EventArgs e)
{
clsPersonaBL bl = new clsPersonaBL();
lstPersonas = bl.BuscarApellidoPersona(txtApellidoBuscar.Text);
gvBuscarApellido.DataSource = lstPersonas;
gvBuscarApellido.DataBind();
}
protected void gvBuscarApellido_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)
{
clsPersona objPersona = lstPersonas[e.NewSelectedIndex];

Session["IdPersona"] = objPersona.IdPersona;
Session["Nombre"] = objPersona.Nombre;
Session["Apellido"] = objPersona.Apellido;
//Session["Ciudad"] = objPersona.Ciudad.Descripcion;
Session["FechaIngreso"] = objPersona.FechaIngreso;
Session["Email"] = objPersona.Email;
Session["Telefono"] = objPersona.Telefono;
Session["DNI"] = objPersona.DNI;
Session["Direccion"] = objPersona.Direccion;
Response.Redirect(String.Format("~/Persona.aspx?Iddoc={0}", objPersona.IdPersona));
}

Eh comentado el campo ciudad por que ese campo es mi campo anidado, cuando yo no lo comento me sale un error :S

Para mostrar mi campo anidado en el grid view eh usado un TemplatedFile y dentro de este un label:

<asp:TemplateField HeaderText="Ciudad">
<ItemTemplate>
<asp:Label ID="Label1" runat="server">
<%#DataBinder.Eval(Container.DataItem, "Ciudad.Descripcion")%>
</asp:Label>
</ItemTemplate>


Por favor, quisiera que me ayuden con este problema ....
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder