Junior — Middle
Оё метавонед мақсади усули Attach дар DbSet ва чӣ гуна истифода мешавад, шарҳ диҳед?
sobes.tech AI
Ҷавоб аз AI
วิธี Attach ใน DbSet ถูกใช้เพื่อแนบวัตถุที่มีอยู่แล้วเข้ากับบริบทของ Entity Framework โดยไม่เปลี่ยนแปลงสถานะของมันในฐานข้อมูล ซึ่งเป็นประโยชน์เมื่อคุณมีวัตถุที่มีอยู่แล้วในฐานข้อมูลและต้องการเริ่มติดตามการเปลี่ยนแปลงของมัน
ตัวอย่างเช่น หากคุณได้รับวัตถุจากแหล่งอื่นและต้องการอัปเดตในฐานข้อมูล คุณต้อง "แนบ" มันเข้ากับบริบทก่อน:
using (var context = new MyDbContext())
{
var existingEntity = new MyEntity { Id = 1, Name = "ชื่อที่อัปเดตแล้ว" };
context.MyEntities.Attach(existingEntity);
context.Entry(existingEntity).State = EntityState.Modified;
context.SaveChanges();
}
ที่นี่ Attach แจ้งให้บริบททราบว่าวัตถุมีอยู่แล้ว แต่ไม่ได้โหลดจากฐานข้อมูล จากนั้นเราก็ระบุอย่างชัดเจนว่าวัตถุถูกแก้ไขแล้ว เพื่อให้การเปลี่ยนแปลงถูกนำไปใช้เมื่อบันทึก