EntityState ถูกแก้ไขอะไร
EntityState ถูกแก้ไขอะไร
Anonim

เมื่อคุณเปลี่ยนค่าคุณสมบัติในเอนทิตีที่ถูกติดตาม บริบทจะเปลี่ยน EntityState สำหรับนิติบุคคลที่จะ ดัดแปลง และ ChangeTracker จะบันทึกค่าคุณสมบัติเก่าและค่าคุณสมบัติใหม่ เมื่อมีการเรียก SaveChanges คำสั่ง UPDATE จะถูกสร้างขึ้นและดำเนินการโดยฐานข้อมูล

ในทำนองเดียวกันอาจมีคนถามว่า Entitystate คืออะไร?

NS รัฐนิติบุคคล แสดงถึงสถานะของเอนทิตี เอนทิตีอยู่ในสถานะใดสถานะหนึ่งต่อไปนี้เสมอ เพิ่มแล้ว: เอนทิตีถูกทำเครื่องหมายว่าเพิ่มแล้ว ลบแล้ว: เอนทิตีถูกทำเครื่องหมายว่าลบแล้ว แก้ไข: เอนทิตีได้รับการแก้ไข

ต่อมา คำถามคือ สถานะแยกออกใน Entity Framework คืออะไร? นิติบุคคล สถานะและ SaveChanges ไม่เปลี่ยนแปลง: the นิติบุคคล กำลังถูกติดตามโดยบริบทและมีอยู่ในฐานข้อมูล และค่าคุณสมบัติของมันไม่ได้เปลี่ยนจากค่าในฐานข้อมูล แยกออก : NS นิติบุคคล ไม่ถูกติดตามโดยบริบท

สิ่งที่ควรทราบคือบริบท SaveChanges คืออะไร

บันทึกการเปลี่ยนแปลง วิธีบันทึกการเปลี่ยนแปลงทั้งหมดที่ทำใน บริบท ของฐานข้อมูล คุณ สามารถ เพิ่ม แก้ไข และลบข้อมูลโดยใช้ your บริบท และคลาสเอนทิตี บันทึกการเปลี่ยนแปลง เมธอดจะเรียกเมธอด DetectChanges โดยอัตโนมัติเพื่อค้นหาการเปลี่ยนแปลงใดๆ กับอินสแตนซ์ของเอนทิตีก่อนที่จะบันทึกลงในฐานข้อมูลพื้นฐาน

ฉันจะอัปเดตฐานข้อมูล Entity Framework ของฉันได้อย่างไร

หลังจากสร้างไฟล์การโยกย้ายโดยใช้คำสั่ง add-migration คุณต้อง อัปเดต NS ฐานข้อมูล . ดำเนินการ อัปเดต - ฐานข้อมูล คำสั่งสร้างหรือแก้ไข a ฐานข้อมูล สคีมา ใช้ตัวเลือก –verbose เพื่อดูคำสั่ง SQL ที่ใช้กับเป้าหมาย ฐานข้อมูล.