Thêm, Sửa, Xóa  Entity Framework


Việc Thêm sửa và xóa trong Entity Framework rất dễ dàng có 5 trạng thái của Entity Framework như sau:


Added         :  thêm

Deleted       :  xóa
Detached     : tách
Modified     : thay đổi
Unchanged  : không thay đổi.
và phương thức SaveChanges() để lưu lại trạng thái đó.

Mình sẽ đưa về một dạng add, edit, delete để bạn dễ nhớ và sử dụng


Ví dụ về Customer






1. Thêm Entity (Add Entity)



public class ProcessCustomer
{
    public void Add_ustomer (Customer newcustomer)
    {
        using (var _datainivn = new Entity_INIVN())
        {
            _datainivn.Customers.Add(newcustomer);
            _datainivn.SaveChanges();
        }
    }
}
hoặc


public class ProcessCustomer
{
    public void Add_ustomer (Customer newcustomer)
    {
        using (var _datainivn = new Entity_INIVN())
        {
            _datainivn.Entry(newcustomer).State = System.Data.Entity.EntityState.Added;
            _datainivn.SaveChanges();
        }
    }
}


2. Sửa Entity (Edit Entity)



public class ProcessCustomer
{
    public void EditCustomer (Customer newcustomer)
    {
        using (var _datainivn = new Entity_INIVN())
        {
            _datainivn.Entry(newcustomer).State = System.Data.Entity.EntityState.Modified;
            _datainivn.SaveChanges();
        }
    }
}
hoặc


public class ProcessCustomer
{
    public void EditCustomer (Customer _newcustomer)
    {
        using (var _datainivn = new Entity_INIVN())
        {
             Customer _customer = _datainivn.Customers.FirstOrDefault(c => c.CustomerID == _newcustomer.CustomerID);
             _customer.FullName = _newcustomer.FullName;
        _customer.Birthday = _newcustomer.Birthday;
        ......................................................................
        _datainivn.SaveChanges();
        }
    }
}

3. Delete Entity (Delete Entity)



public class ProcessCustomer
{
    public void DeleteCustomer (Customer customer)
    {
        using (var _datainivn = new Entity_INIVN())
        {
            _datainivn.Customers.Remove(customer);
            _datainivn.SaveChanges();
        }
    }
}
hoặc


public class ProcessCustomer
{
    public void DeleteCustomer (Customer newcustomer)
    {
        using (var _datainivn = new Entity_INIVN())
        {
            _datainivn.Entry(newcustomer).State = System.Data.Entity.EntityState.Deleted;
            _datainivn.SaveChanges();
        }
    }
}

Bạn có thể dùng các  phương thức trên cho các entity khác.

Bạn có thể xem video thêm o đây:





Chúc các bạn thành công.

Share To:

laptrinhvien

Post A Comment:

0 comments so far,add yours