Ing. Honoria Reyes Macedo
IDE: Microsoft Visual Studio
Proveedor para conexión a Base de Datos:SqlClient
Lenguaje de programacion: C#
Base de Datos: SQLServer
INTRODUCCION:
Es una aplicación de modo escritorio con Windows Form.
En esta práctica se utiliza una base da datos "CursoADO" en SQL Server
IDE: Microsoft Visual Studio
Proveedor para conexión a Base de Datos:SqlClient
Lenguaje de programacion: C#
Base de Datos: SQLServer
INTRODUCCION:
Es una aplicación de modo escritorio con Windows Form.
En esta práctica se utiliza una base da datos "CursoADO" en SQL Server
ACTIVIDADES
1.- Crear un nuevo proyecto
CursoLINQ
1.1.- Seleccionar C#,
seleccionar Windows Forms Application y poner el nombre del proyecto CursoLINQ
1.2 Se creara automáticamente la forma siguiente
1.3.- Cambiar en la forma
las propiedades (Con mouse derecho)
Text = Alumno
Name = CaptAlumno
2.-- Agregar(Arrastrar) los siguientes controles a la pantalla:
Seleccionar del menú ToolBox como se indica en el siguiente punto
2.1.- Para las Label (etiquetas) seleccionar con mouse derecho las propiedades
y poner en su respectivo Text:
Nombre
Apellido Paterno
Apellido Materno
Fecha de Alta
Activo

2.2.- Para los controles Text, CheckBox, DateTimePicker, Button (controles
de captura) poner en sus propiedades en su respectivo name
textBNombre
textBApPat
textBApMat
dateTAlta
checkBStatus
btnGuardar

Y en el DateTimePicker poner su format= short
3.- Crear una nueva clase Alumno.cs
desde el menú derecho Solution
Explorer.
Con mouse derecho sobre CursoLINQ seleccionar
Add + Class…

3.1 Capturar el contenido del constructor y la definición de las
propiedades con sus get y set (Texto en
rojo)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace
CursoLINQ
{
class Alumno
{
public Alumno()
{
intCveAlumno = Int32.MinValue;
strNombre = string.Empty;
strApellidoPat = string.Empty;
strApellidoMat = string.Empty;
sintEstatus = Int16.MinValue;
sdatFechaAlta = DateTime.MinValue;
}
public int intCveAlumno { get; set; }
public DateTime sdatFechaAlta { get;
set; }
public short sintEstatus { get; set; }
public string strApellidoMat { get;
set; }
public string strApellidoPat { get;
set; }
public string strNombre { get; set; }
}
}
4.- Crear una nueva clase AlumnoADO.cs desde el menú derecho Solution Explorer.
Con mouse derecho seleccionar
Add + Class…
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
namespace CursoLINQ
{
class AlumnoADO
{
public static string connectionString
="Data Source=DESKTOP-CHPM3KJ\\SQLEXPRESS;Initial Catalog=CursoADO;user id
= sa; password = admin;"
+ "Integrated
Security=true";
public static string queryString =
"";
public AlumnoADO() {
}
public
static string Insert(Alumno pmdlAlumno)
{
string strResult = "";
try
{
using (SqlConnection connection
=
new SqlConnection(connectionString))
{
queryString = @"insert
into alumno(nombre, appaterno, apmaterno, estatus, fechaalta)
values(@Nombre, @ApPaterno, @ApMaterno, @Estatus, @FechaAlta) ";
SqlCommand command = new
SqlCommand(queryString, connection);
command.Parameters.AddWithValue("@Nombre",
pmdlAlumno.strNombre);
command.Parameters.AddWithValue("@ApPaterno",
pmdlAlumno.strApellidoPat);
command.Parameters.AddWithValue("@ApMaterno",
pmdlAlumno.strApellidoMat);
command.Parameters.AddWithValue("@Estatus",
pmdlAlumno.sintEstatus);
command.Parameters.AddWithValue("@FechaAlta", pmdlAlumno.sdatFechaAlta.ToString("yyyyMMdd"));
connection.Open();
if
(command.ExecuteNonQuery() > 0)
{
strResult =
"OK";
Console.WriteLine("Registro Insertado correctamente");
}
}
}
catch (Exception exp)
{
strResult = exp.Message;
Console.WriteLine(exp.Message);
}
return strResult;
}
}
}
5.- Agregar un evento Click al botón Guardar: Dar doble click
sobre el botón Guardar y agregar la instrucción en rojo
private void btnGuardar_Click(object sender, EventArgs e)
{
string strResult = AlumnoADO.Insert(new Alumno() { strNombre = textBNombre.Text, strApellidoPat
= textBApPat.Text, strApellidoMat = textBApMat.Text, sintEstatus =
Convert.ToInt16(checkBStatus.Checked ? 1 : 0), sdatFechaAlta = dateTAlta.Value });
5.1.- Compilar y Ejecutar el programa
con Ctrl +F5. Revisar si inserto en el SQLSERVER
6.- Agregar un DataGridViewcon el nombre dataGridAlumno desde el menú ToolBox y llenarlo con un
DataSet
6.1.- Agregar el método Consulta() a la clase AlumnoADO.cs
public static DataSet Consulta()
{
queryString = @"SELECT cvealumno,
nombre, appaterno, apmaterno, estatus, fechaalta
from dbo.alumno
WHERE estatus = @pricePoint
ORDER BY cvealumno
ASC;";
int paramValue = 1;
using (SqlConnection
connection = new SqlConnection(connectionString))
{
SqlCommand command = new SqlCommand(queryString, connection);
command.Parameters.AddWithValue("@pricePoint", paramValue);
//SqlCommand
cmd = new SqlCommand("Select * from tuTabla", cn);
SqlDataAdapter da = new SqlDataAdapter(command);
DataSet ds = new DataSet();
try
{
da.Fill(ds); // Opcion de llenado por DataSet
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
Console.ReadLine();
}
return ds;
}
}
6.2 Declarar una variable
global de tipo DataSet en la forma CaptAlumno
public partial class CaptAlumno : Form
{
DataSet Auxiliar_ds = new DataSet();
...
...
}
6.3.- Compilar y ejecutar
con Ctrl+F5. Revisar los resultados en SQLServer
7.- Agregar un nuevo
boton ¨Ejecutar LINQ¨, un DataGridView y
un botón Refrescar
7.1 En las propiedades de cada control, poner el valor respectivo
en name
btnLinQ
dataGridViewLINQ
btnRefrescar
7.2 Agregar las
instrucciones en rojo en el evento del botón btnRefrescar
private void btnRefrescar_Click_1(object
sender, EventArgs e)
{
Auxiliar_ds = AlumnoADO.Consulta();
dataGridAlumno.DataSource = Auxiliar_ds.Tables[0];
}
7.3 Agregar las siguientes instrucciones al evento
click del botón btnLinQ
private void btnLinQ_Click(object
sender, EventArgs e)
{
DataTable alumno_dt = Auxiliar_ds.Tables[0];
DataTable dtQuery =
(from alumno_alias in alumno_dt.AsEnumerable()
orderby alumno_alias.Field<string>("nombre") ascending
where alumno_alias.Field<string>("nombre") ==
"ERICK"
select alumno_alias).CopyToDataTable();
dataGridViewLINQ.DataSource = dtQuery;
}
Observar que el botón
<Refrescar> actualiza desde la Base de Datos a “dataGridAlumno” Creando un nuevo DataSet
Y el botón < Ejecutar LINQ > actualiza desde “dataGridAlumno” a “dataGridViewLINQ” usando el DataSet previamente actualizado
oooooooooooooooooooooooooooooooOoOooooooooooooooooooooooooooooooooooooooooo
oooooooooooooooooooooooooooOOOooooOOOooooooooooooooooooooooooooooooooooooo

No hay comentarios.:
Publicar un comentario