miércoles, 15 de abril de 2020

C# CRUD Entity Framework

Creacion de una aplicacion C#  CRUD usando Entity Framework y SQL Server

Herramientas de Uso
->Visual Studio 2017
->Sql Server 2008 o superior

Iniciamos
Creamos una nueva aplicacion de escritorio C#



Ahora tenemos que agregar los componentes del formulario.
Creamos el formulario con sus botones ,Labels etc.
Agregar Modificar Eliminar y el GridView


Descargamos e instalamos Entity Framework
Para ello damos click derecho en el nombre de la solucion y seleccionamos 
Administrar Paquetes NuGet y en la parte de Examinar Buscamos Entity Framework y lo Instalamos


Vamos a las propiedades del Grid y lo configuramos.


Abrimos SQL Server y
Creamos la base de datos bdagenda
con las siguientes tablas


Damos click derecho en la solucion y agregamos un nuevo elemento




Buscamos en Data el elemento ADO.NET Entity Data Model
Ahora le damos el nombre de Entitybdagenda
Elegimos EF Designer desde base de datos y seleccionamos las tablas con las que vamos a trabajar.


Vamos a el Modelo .edmx que se encuentra en el explorador de soluciones y buscamos y las anotamos en un bloc de notas nos van a servir mas tarde.
Modelbdagenda.Context  Dependiendo el nombre que le pusieron
bdagendaEntitiesconect   Dependiendo el nombre que le pusieron

Damos doble click en el formulario para entrar a el Load y escribimos lo siguiente

 private void Form1_Load(object sender, EventArgs e)
        {

            cargar();
        }


        private void cargar()
        {
            bdagendaEntitiesconect contexto = new bdagendaEntitiesconect();
            dataGridView1.DataSource = contexto.tblalumno.ToList();
        }


 private void llenar()
        {
            this.txtidalumno.Text = dataGridView1.SelectedRows[0].Cells[0].Value.ToString();
            this.txtnombre.Text = dataGridView1.SelectedRows[0].Cells[1].Value.ToString();
            this.txtapaterno.Text = dataGridView1.SelectedRows[0].Cells[2].Value.ToString();
            this.txtamaterno.Text = dataGridView1.SelectedRows[0].Cells[3].Value.ToString();

        }



 private void dataGridView1_click(object sender, EventArgs e)
        {
            llenar();
        }

-----------------------------------------------------------------------------------------------------------
Ahora damos doble click en el boton Agregar y escribimos lo siguiente:

private void btnagregar_Click(object sender, EventArgs e)
        {
            
            string nombre = this.txtnombre.Text;
            string apaterno = this.txtapaterno.Text;
            string amaterno = this.txtamaterno.Text;

            using (bdagendaEntitiesconect contexto = new bdagendaEntitiesconect())
            {
                tblalumno c = new tblalumno();
                c.Nombre = nombre;
                c.Apaterno = apaterno;
                c.Amaterno = amaterno;
                // Tambien se puede hacer esto
                //tblalumno c = new tblalumno
                //{
                //    idalumno = idalumno,
                //    Nombre = nombre,
                //    Apaterno = apaterno,
                //    Amaterno = amaterno
                //};
                contexto.tblalumno.Add(c);
                contexto.SaveChanges();
                cargar();
            }
        }


-----------------------------------------------------------------------------------------------------
Para el boton Modificar se escribe el siguiente codigo

 private void btnmodificar_Click(object sender, EventArgs e)
        {
            using (bdagendaEntitiesconect contexto = new bdagendaEntitiesconect())
            {

                int idalumno = Convert.ToInt16(this.txtidalumno.Text);

                string nombre = this.txtnombre.Text;
                string apaterno = this.txtapaterno.Text;
                string amaterno = this.txtamaterno.Text;
                tblalumno c = contexto.tblalumno.FirstOrDefault(x => x.idalumno == idalumno);
                c.Nombre = nombre;
                c.Apaterno = apaterno;
                c.Amaterno = amaterno;
                contexto.SaveChanges();
                cargar();
            }

        }
---------------------------------------------------------------------------------------------------------
  private void btneliminar_Click(object sender, EventArgs e)
        {
            using (bdagendaEntitiesconect contexto = new bdagendaEntitiesconect())
            {

                int idalumno = Convert.ToInt16(this.txtidalumno.Text);

                tblalumno c = contexto.tblalumno.FirstOrDefault(x => x.idalumno == idalumno);

                contexto.tblalumno.Remove(c);
                contexto.SaveChanges();
                cargar();
            }
        }

        private void btnlimpiar_Click(object sender, EventArgs e)
        {
            this.txtamaterno.Clear();
            this.txtapaterno.Clear();
            this.txtidalumno.Clear();
            this.txtnombre.Clear();
        }

        private void btnsalir_Click(object sender, EventArgs e)
        {
            this.Close();
        }

No hay comentarios:

Publicar un comentario