EJEMPLO UTILZANDO CLASES LINQ 3/3

Publicado: 13 septiembre, 2013 en c#, Programación

Capa Aplicación

En esta capa generamos la interfaz para adicionar nuevos datos y listar los datos existentes. Agregar 4 formularios web

aplicacion_1
aplicacion_2

frRaza.aspx

Adicionar y listar la raza de los perros

Controles

Nombre

Cantidad

Label Label1

1

TextBox txtRaza

1

Button btnAdicionar

1

GridView gvRazas

1

guiRaza

Código frRaza.aspx.cs

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using System.Web.UI;

using System.Web.UI.WebControls;

namespace WebCanino.Aplicacion

{

public partial class frRaza : System.Web.UI.Page

{

protected void Page_Load(object sender, EventArgs e)

{

listarRazas();

}

protected void btnAdicionar_Click(object sender, EventArgs e)

{

negocio.clsRaza clrRz = new negocio.clsRaza();

clrRz.adicionar(txtRaza.Text.ToString());

listarRazas();

txtRaza.Text = «»;

ClientScript.RegisterStartupScript(this.GetType(), «myScript», «<script>javascript: alert(‘Se guardaron los datos satisfactoriamente’);</script>»);

txtRaza.Focus();

}

void listarRazas()

{

negocio.clsRaza rz = new negocio.clsRaza();

gvRazas.DataSource = rz.listarRazas();

gvRazas.DataBind();

}

}

}

====================================================================

frPropietario.aspx

Controles

Nombre

Cantidad

Label Label1Label2

2

TextBox txtNumDoctxtNombres

2

Button btSave

1

GridView gvPropietario

1

 guiPro

Código frPropietario.aspx.cs

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using System.Web.UI;

using System.Web.UI.WebControls;

namespace WebCanino.Aplicacion

{

public partial class frPropitario : System.Web.UI.Page

{

protected void Page_Load(object sender, EventArgs e)

{

listarPropietario();

}

protected void BtSave_Click(object sender, EventArgs e)

{

negocio.clPropietario pp = new negocio.clPropietario();

pp.adicionar(TxtNumDoc.Text.ToString(),txtNombres.Text.ToString());

listarPropietario();

TxtNumDoc.Text = «»;

txtNombres.Text = «»;

ClientScript.RegisterStartupScript(this.GetType(), «myScript», «<script>javascript: alert(‘Se guardaron los datos satisfactoriamente’);</script>»);

TxtNumDoc.Focus();

}

void listarPropietario()

{

linqClases.LinqDbDataContext contextoLinq = new linqClases.LinqDbDataContext();

gvPropietario.DataSource = contextoLinq.Propietario;

gvPropietario.DataBind();

}

}

}

====================================================================

frPropietarioPerro.aspx

Controles

Nombre

Cantidad

Label Label1 a Label6

6

TextBox txtNomPerrotxtDocFuntxtNomdog

3

Button btAdicionarButton1 a Button3

4

GridView gvPropietario

1

DrowDownList ddPropietarioddEdadddRaza

3

 El DrowDownList  lista los datos del 1 al 10 y se llenan mediante la propiedad “Items

guiPP

Código frPropietarioPerro

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using System.Web.UI;

using System.Web.UI.WebControls;

namespace WebCanino.Aplicacion

{

public partial class frInscripcion : System.Web.UI.Page

{

protected void Page_Load(object sender, EventArgs e)

{

llenarPropietario();

llenarRazas();

listarInscripcion();

}

/// <summary>

/// Llenar combo raza

/// </summary>

void llenarRazas()

{

using (var dc = new linqClases.LinqDbDataContext ())

{

ddRaza.DataSource = from r in dc.Raza

orderby 0

select new {r.id, r.nombreRaza};

ddRaza.DataTextField = «nombreRaza»;

ddRaza.DataValueField = «id»;

ddRaza.DataBind();

}

}

/// <summary>

/// Llenar combo propietario

/// </summary>

void llenarPropietario()

{

using (var dc = new linqClases.LinqDbDataContext())

{

ddPropietario.DataSource = from p in dc.Propietario

orderby 0

select new { p.id, p.nombres};

ddPropietario.DataTextField = «nombres»;

ddPropietario.DataValueField = «id»;

ddPropietario.DataBind();

}

}

protected void btnAdicionar_Click(object sender, EventArgs e)

{

string razaId;

string propietarioId;

string perroId;

razaId = ddRaza.Text.ToString();

propietarioId = ddPropietario.Text.ToString();

//Adicionar los datos del perro

negocio.clsPerro dg = new negocio.clsPerro();

dg.adicionar(txtNomPerro.Text.ToString(), ddEdad.Text.ToString(),Convert.ToInt16(razaId));

//Buscar el id del perro ingresado

perroId = dg.queryperroById(txtNomPerro.Text.ToString(), ddEdad.Text.ToString(), Convert.ToInt16(razaId));

//Adicional el propietario del perro

dg.perroPropietario(Convert.ToInt16(perroId), Convert.ToInt16(propietarioId));

listarInscripcion();

ClientScript.RegisterStartupScript(this.GetType(), «myScript», «<script>javascript: alert(‘Se guardaron los datos satisfactoriamente’);</script>»);

}

void listarInscripcion()

{

negocio.clsInscripcion ins = new negocio.clsInscripcion();

gvInscripcion.DataSource = ins.consultar();

gvInscripcion.DataBind();

}

void buscarbyPropietario(string numDoc)

{

if (numDoc == «»)

{

listarInscripcion();

}

else

{

//buscar propietario con sus perros por numero de documento

negocio.clPropietario pt = new negocio.clPropietario();

gvInscripcion.DataSource = pt.buscarPropietario(numDoc);

gvInscripcion.DataBind();

}

}

void buscarbyNombrePerro(string nombreDog)

{

if (nombreDog == «»)

{

listarInscripcion();

}

else

{

linqClases.LinqDbDataContext contextoLinq = new linqClases.LinqDbDataContext();

var query = from pt in contextoLinq.Propietario

join ptdg in contextoLinq.propitario_perro on pt.id equals ptdg.propietario_id

join dg in contextoLinq.Perro on ptdg.perro_id equals dg.id

join r in contextoLinq.Raza on dg.raza_id equals r.id

where dg.NombrePerro == nombreDog

orderby pt.id

select new

{

pt.numDocumento,

pt.nombres,

dg.NombrePerro,

dg.edad,

r.nombreRaza

};

gvInscripcion.DataSource = query.ToList();

gvInscripcion.DataBind();

}

}

protected void Button1_Click(object sender, EventArgs e)

{

buscarbyPropietario(txtDocFun.Text.ToString());

}

protected void Button2_Click(object sender, EventArgs e)

{

buscarbyNombrePerro(txtNomdog.Text.ToString());

}

protected void Button3_Click(object sender, EventArgs e)

{

listarInscripcion();

}

}

}

====================================================================

Fuentes del proyecto…

Deja un comentario