Data">
CREANDO UN PROYECTO C# en 3 CAPAS
CREANDO UN PROYECTO C# en 3 CAPAS
CREANDO UN PROYECTO C# en 3 CAPAS
capas enC#
----------------------------------------------------
------------------------ELIMINAR
create proc EliminarProducto
@idpro int
Script Base de datos.
as
delete from Productos where Id=@idpro
go
------------------EDITAR
Sistema en C#
Capa Datos
Capa Negocio
Explorador de soluciones.
Explorador de soluciones.
using System;
using System.Data.SqlClient;
using System.Data;
namespace CapaDatos
{
class DatosConexion
{
private SqlConnection Conexion = new SqlConnection("data source=DAVID-LOPEZ\\SQLEXPRESS;initial
catalog=Practica;integrated security=true");
public SqlConnection AbrirConexion()
{
if (Conexion.State == ConnectionState.Closed)
Conexion.Open();
return Conexion;
}
public SqlConnection CerrarConexion()
{
if (Conexion.State == ConnectionState.Open)
Conexion.Close();
return Conexion;
}
}
}
Lic. David I. López Pérez 10
Codificar-Capa de Acceso a Datos
•Agregamos una clase para la consultas de datos a nuestro servidor SQL Server (CD_Productos.cs)
using System;
using System.Data.SqlClient;
using System.Data;
namespace CapaDatos
{
class CD_Productos
{
private DatosConexion conexion = new DatosConexion();
SqlDataReader leer;
DataTable tabla = new DataTable();
SqlCommand comando = new SqlCommand();
public DataTable Mostrar()
{
comando.Connection = conexion.AbrirConexion();
comando.CommandText = "MostrarProductos";
comando.CommandType = CommandType.StoredProcedure;
leer = comando.ExecuteReader();
tabla.Load(leer);
conexion.CerrarConexion();
return tabla;
}
Lic. David I. López Pérez 11
Codificar-Capa de Acceso a Datos
•Método Insertar Datos.
public void Insertar(string nombre, string desc, string marca, double precio, int stock)
{
comando.Connection = conexion.AbrirConexion();
comando.CommandText = "InsetarProductos";
comando.CommandType = CommandType.StoredProcedure;
comando.Parameters.AddWithValue("@nombre", nombre);
comando.Parameters.AddWithValue("@descrip", desc);
comando.Parameters.AddWithValue("@Marca", marca);
comando.Parameters.AddWithValue("@precio", precio);
comando.Parameters.AddWithValue("@stock", precio);
comando.ExecuteNonQuery();
comando.Parameters.Clear();
conexion.CerrarConexion();
}
public void Editar(string nombre, string desc, string marca, double precio, int stock, int id)
{
comando.Connection = conexion.AbrirConexion();
comando.CommandText = "EditarProductos";
comando.CommandType = CommandType.StoredProcedure;
comando.Parameters.AddWithValue("@nombre", nombre);
comando.Parameters.AddWithValue("@descrip", desc);
comando.Parameters.AddWithValue("@Marca", marca);
comando.Parameters.AddWithValue("@precio", precio);
comando.Parameters.AddWithValue("@stock", precio);
comando.Parameters.AddWithValue("@id", id);
comando.ExecuteNonQuery();
comando.Parameters.Clear();
conexion.CerrarConexion();
}
}//Cierre namespace
objetoCD.Insertar(nombre,desc,marca,Convert.ToDouble(precio),Convert.ToInt32(stock));}
public void EditarProd(string nombre, string desc, string marca, string precio, string stock,string id)
{
objetoCD.Editar(nombre, desc, marca, Convert.ToDouble(precio), Convert.ToInt32(stock),Convert.ToInt32(id));
}
public void EliminarPRod(string id) {
objetoCD.Eliminar(Convert.ToInt32(id));}
}
txtNombre
txtDesc
txtMarca
txtPrecio
txtStock datagridview1
btnGuardar
btnEditar btnEliminar
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
MostrarProdctos();
}
private void MostrarProdctos()
{
CN_Productos objeto = new CN_Productos();
dataGridView1.DataSource = objeto.MostrarProd();
}
Lic. David I. López Pérez 18
Codificar CapaPresentacion Form1.cs ---- Boton editar.
23