“ABC de Clientes” en ASP.NET & MySQL [Parte 2/3]

Buenas noches lectores de BaluSoft, en esta ocasión vamos a continuar con el pequeño ABC de clientes que estábamos haciendo, en esta parte veremos algo que ya hicimos en el post pasado, pero también haremos una consulta de nuestros clientes agregados mostrando la lógica de cómo crear la conexión a MySQL, escribiendo puro código, ya que es muy importante saber hacerlo sin utilizar los componentes que nos proporciona Microsoft.

Primero que nada terminaremos con la pagina que habiamos estado haciendo “Altas/Bajas”, la manera como lo vamos a hacer es relativamente sencillo asi como hicimos las altas, algo parecido haremos con las bajas. Mas delante cuando consultemos nuestros clientes sera algo mas elaborado pero con un buen estilo de programacion.

Borrar Clientes

Les recuerdo que esta es la parte 2 , aqui esta la parte 1 Open-mouthed smile.

Primero que nada, en la pagina AltasBajas.aspx, agregaremos el siguiente codigo HTML

image

Claro claro, se preguntaran para que escribimos los componentes ASP si podemos arrastrarlos!??, ok pues agregaremos ese titulo (Borrar clientes) en la misma pagina donde hacemos las Altas de clientes, pero arriba de este, con la etiqueta <hr /> estamos agregando un separador… solo para que se vea mas “organizado”.

image

Tambien agregaremos un “GridView” que se encuentra en la seccion “Data”. Ahora tenemos que configurar este, lo haremos utilizando el SQL Data Source que ya hemos agregado anteriormente (parte 1).

Para configurarlo (no se acostumbren a dar tantos clics!, lo genial es programarlo Hot smile ) haremos lo siguiente:

image

Damos clic en “ < “ y se mostrara esta lista desplegable y en “Choose Data Source” elegimos nuestro SQL Sata Source que habiamos agregado, esto es muy muy sencillo. Sigamos.

Le damos Check a “Enable Pagin”  para que si nos muestra muchos resultados, nos cree paginas automaticamente.

Ahora daremos en “Configure Data Source”

image

image

Como se ve, solo Next y Next, hasta llegar aqui que es lo importante

image

La manera de como vamos a borrar a los clientes, es habilitando la opcion a nuestro Grid View de poder hacerlo, damos next y finish y, acontinuacion en la lista desplegable que muestra nuestro “Grid View” aparecera ahora una nueva opcion que es “Enable Deleting”, por razones obvias, la activamos!. Ahora si se dieron cuenta nuestro Grid View ahora tendra un apartado nuevo, el cual nos dejara borrar a los clientes que se deseen, pero estos quedaran registrados automaticamente en otra tabla.

Ahora solo falta programar el pequeño boton para hacer una busqueda personalizada ( Ya que al inicio nos mostrara todos los clientes que tengamos, por si llegamos a tener muchos registrados, sera una wea buscarlos entre todos )

Creamos un evento de clic en el boton que habiamos agregado anteriormente y escribiremos lo siguiente:

image

So????, seguramente te estas preguntando what da faq is @nombreBuscar?,, obviamente no, tu ya sabes que eso es un parametro, y necesitamos agregar de donde vamos a obtener su valor, y pues claro que sera del textBox que hemos agregado con nombre “txtBuscarNombre”

image

entonces seleccionamos nuestro SQL Data Source y en sus opciones seleccionamos los (…) de la propiedad SelectQuery, para alli poder establecer el valor del parametro @nombreBuscar (Recuerdan, en el post anterior ya lo hemos hecho).

Ya saben, al dar clic en los (…), en la ventana que nos aparecera agregamos el parametro como muestra la imagen. image

Claro, primero tenemos que darle clic en “Add Parameter”. De esta manera lo que se encuentra en nuestro TextField formara parte de la consulta que se esta haciendo al dar clic en el boton. Es muy importante hacer las consultas por medio de parametros y no concatenando el valor de nuestro textField, ya que haciendolo con parametros no seremos vulnerable a algun tipo de inyeccion SQL. Para finalizar simplemente damos en OK.

Ahora si corremos nuestra pagina, podremos dar altas y buscar algun cliente en especifico para poder darle KILL! Open-mouthed smile.

Yo he borrado varios ya, y para que vean que nuestro trigger funciona (creado en post anterior), veamos.

image

Al parecer me he borrado dos veces XD, pero todos los DELETES que se hagan a usuarios se guardaran en esta tabla (usuarios_bajas).

Consultar Informacion de los Usuarios

Bueno, ahora vamos a crear un nuevo item ( un web form ), que se llamara consultas.aspx (recuerden que estamos usando un MasterPage, entonces dejamos habilitada la opcion “select master page”, posteriormente escogemos la master page).

Ahora vamos agregar una serie de labels como se muestra:

image

Cada label esta renombrado (su ID es por ejemplo lblNombre, lblApellidoP,lblApellidoM) y estan dentro de un <table> agregamos la tabla por codigo o arrastrandola, como deseen pero dejenla como se muestra en la imagen anterior.

Ahora he estado pensando que vamos a hacer, y en esta ocacion buscaremos por “idUsuarios” y por “nombre”, solo para que sepan como agregar datos a un grid View desde codigo, pero primero buscaremos por “idUsuarios”, que segun el ID que ingresemos se mostrara la informacion en tales Labels, Agregaremos una fila mas a la tabla, para poner un TextField y un boton, para por alli ingresar el id.

image

el TextField lo renombramos como “txtNom” y los titulos son simplemente etiquetas h2.

Ahora viene lo bueno!, hacer la consulta y mostrarla en estos lindos labels Open-mouthed smile, creamos un evento del boton que dice Buscar y veremos que vamos a hacer D:.

Crear la clase Usuarios y UsuariosDAL

image

Agregaremos una carpeta llamada App_Code, alli se encontraran nuestras clases que haremos, crearemos una que se llame Usuarios.cs y UsuariosDAL.cs (App_Code se agrega en el menu desplegable y en “Add ASP.NET Folder”) y dentro de esa carpeta damos en New Item para agregar una Class.

La clase Usuarios, tendra de propiedades todos los campos que tiene nuestra tabla Usuarios de Mysql y la clase UsuariosDAL (Data Access Layer) contendra todos los metodos necesarios para acceder a la base de datos y asi dar altas y bajas a objetos tipo Usuarios!.

Definiendo clase Usuarios.cs

La clase usuarios se vera de la siguiente manera:

(Les adjunto el archivo, ya que en un solo pantallazo, no se vera)

(bueno igual se los pego aqui)

public class Usuarios
{
public Usuarios()
{
}

//variables privadas
private String nom, apellido_p, apellido_m, razon_s;
private int id,tel, codigo_p;
private String domi, correoE;

//propiedades de la clase
public int idUsuarios
{
get
{
return id;
}
set
{
id = value;
}
}

public String nombre
{
get
{
return nom;

}
set
{
nom = value;
}
}

public String apellido_paterno
{
get
{
return apellido_p;
}
set
{
apellido_p = value;
}
}
public String apellido_materno
{
get
{
return apellido_m;
}
set
{
apellido_m = value;
}
}
public String razon_social
{
get
{
return razon_s;
}
set
{
razon_s = value;
}
}
public int telefono
{
get
{
return tel;
}
set
{
tel = value;
}
}
public int codigo_postal
{
get
{
return codigo_p;
}
set
{
codigo_p = value;
}
}
public String domicilio
{
get
{
return domi;
}
set
{
domi = value;
}
}
public String email
{
get
{
return correoE;
}
set
{
correoE = value;
}
}

}

Definendo la clase UsuariosDAL

En esta clase, por el momento, crearemos un metodo que nos devolvera un objeto (y solo uno, ya que sera usado para busqueda individual), veremos como lo llamaremos…

Primero que nada, debemos de agregar una referencia, que es la de MySql.Data, en teoria tenemos instalado el Conector de Mysql a .NET si no, hasta este momento habriamos tenido miles de errores, entonces solo agregamos la referencia de la sig. manera:

image

image

Y acontinuacion, crearemos un metodo que nos devolvera solo un objeto de tipo usuarios. Vamonos por partes, primero las referencias!:

image

Luego, la declaracion de variables privadas globales (solo una) y la obtencion de nuestro ConnectionString desde nuestro constructor (si no alcanzas a ver, abre la imagen en otra pestaña)

image

Aqui hay que ver algo importante, en la linea donde esta ConfigurationManager, la cadena que se encuentra entre los corchetes, es el nombre de la conexion que le hemos dado al momento de usar el componente SQL Data Source, lo recuerdan??, si no recuerdan el nombre, podemos irnos al archivo web.config y en las etiquetas     <connectionStrings> , alli vendra el nombre que deben de poner en la cadena esa.

Acontinuacion viene el metodo que nos devolvera un Usuario, ya con los datos de la consulta, la pondre en partes ya que esta un poco largo.

image

continuamos con el try

image

continuamos con el else

image

De esta forma estara listo el metodo, ahora solo hay que empearlo en consultar.aspx, donde agregamos el boton que dice “buscar!” crearemos un evento dando doble clic en el y asi seguiremos con lo siguiente:

image

Recuerden que los labels los renombramos, hay que identificarlos bien y poner el adecuado para cada uno.

Veamos, vamos a probarlo:

image

Muchas gracias por seguir este post!, esperen la siguiente entrada!

Anuncios

11 comentarios sobre ““ABC de Clientes” en ASP.NET & MySQL [Parte 2/3]

  1. HOLA ME PARESE SUPER EL TODAS LAS COSAS QUE ENSEÑAN POR AK ES INTERESANTE PUES MIRA YO ESTOY CREANDO MI PRIMER PROYECTO WEB ES HACERCA DE UNA FARMACIA ON-LINE YA HICE TODO LOS FORMULARIOS SOLO ME FALTA UNO QUE ES EL PODER REALIZAR VENTAS EN LINEA ES DECIR COMO UN CARRITO DE COMPRAS O ALGO PARESIDO TE AGRADESERIA SI ME EXPLICARAS UN EJEMPLO PORFAVOR ASI DE ENTEMDIBLE COMO LOS ANTERIORES EJEMPLOS DE LA WEB .. BUENO BENDICIONES ESPERO RESPUESTAS

  2. HOLA GRACIAS POR EL MATERIAL QUE ENVIASTES ESTA MUY INTERESANTE AHORA ESTOY INTENTANDO METERLE UN PLANTILLA CSS Y ME A COSTADO CONFIGURAR LA CSS A ME PAGINA … NO TIENES ALGO UN TUTORIAL PARA CONFIGURAR CSS EN ASP.NET 2010 ME INTERESA MUCHO EL APRENDER . GRACIAS DE ANTE MANO

    1. Bueno eso creo quedara pendiente!, no tengo algún tutorial de css a la mano, pero no tiene ninguna forma diferente de hacerse en ASP que en otro lado, si hay muchos tutoriales en la red estoy seguro que si encontraras.

  3. HOLA COMO ESTAS SIGO TRABAJANDO EN EL PROYECTO DE ASP .NET Y AQUI HA SIDO EL UNICO LUGAR DONDE ME AN DAO UN POCO DE AYUDA .. PUES AHORA SE ME PRESENTO UN PROBLE Y ESQUE NECESITO EL CODIGO PARA ACCTUALIZAR UN GRIDVIEW ES DECIR AL METER UN NOMBRE MEDICAMENTO “PANADOL” LO GUARDA PERO AL VOLVER A METER OTRO DATO “PANADOL” ME LO GUARDA INDEPENDIENTE Y LO QUE QUIERO ES QUE ME ACTUALICE LA CANTIDAD EN EXISTENCIA DEL CAMPO PANADOL ETC… SI ME HECHAS UNA MANO TE LO AGRADECERIA BASTANTE … carcolindres008@hotmail.com Dios los bendiga

  4. hola nos dejaron algo parecido a lo que tu haces solo que no puedo conectarme a la base de datos porque no tiene la referencia Mysql.Data
    lo tengo que bajar o algo asi…?

  5. muy buen tutorial compadre se agradece hay muy poca informacion sobre mysql y net en la red. pero esto esta perfecto me gustaria que siguieras con mas informaacion de mysql y net pero en vb net gracias

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s