Hỏi đáp

Chia sẻ kiến thức, cùng nhau phát triển

Truy xuất dữ liệu code first

13:01 06-05-2018 697 lượt xem 2 bình luận 19:44 09-05-2018

Chào mọi người, mình mơi làm quen với code fist thì gặp phải tình trạng sao đây

mình .Find(ID) để lấy object dưới DB lên, sao đó mình thây đổi thuộc tính của nó và mình không SaveChanges() thì dữ liệu của mình dưới DB kg đổi,

tiếp theo  mình ToList() để lấy dữ liệu dưới DB lên khi đó list kết quả object mà mình dùng find lấy lên thuộc tính lại bị đổi. bạn nào hiểu chổ này có thể giải thích giúp mình được không 

Ảnh demo

Bình luận

Để bình luận, bạn cần đăng nhập bằng tài khoản Howkteam.

Đăng nhập
darkclouds2357 đã bình luận 19:44 09-05-2018

Bởi khi change value của object đó thì nó chỉ mới lưu trong object context của thằng dbcontext thôi. muôn apply xuống db thì phải báo cho nó biết là mình sẽ save những cái thay đổi đó xuống = SaveChange(); Còn khi tolist thì là nó đổi dữ liệu trong objectcontext ra list nên nó có sự thay đổi data.

Đọc thêm chi tiết về cách thức mà EF nó hoạt động để nắm rõ hơn.

Nguyễn Thái Hải đã bình luận 13:03 06-05-2018

Mình chưa hiểu câu hỏi cho lắm, nói rõ tí đc k ạ. Mơ hồ quá

Câu hỏi mới nhất