คำถามติดแท็ก entity

11
ฉันจะรับรหัสของเอนทิตีที่แทรกในกรอบงานของเอนทิตี้ได้อย่างไร [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน2 ปีที่ผ่านมา ฉันมีปัญหากับ Entity Framework ใน Asp.net ฉันต้องการรับค่ารหัสทุกครั้งที่ฉันเพิ่มวัตถุในฐานข้อมูล ฉันจะทำสิ่งนี้ได้อย่างไร

27
วิธีการแก้ไข "วัตถุของไฮเบอร์เนตอ้างอิงอินสแตนซ์ชั่วคราวที่ไม่ได้บันทึก - บันทึกอินสแตนซ์ชั่วคราวก่อนที่จะล้าง" ข้อผิดพลาด
ฉันได้รับข้อผิดพลาดต่อไปนี้เมื่อฉันบันทึกวัตถุโดยใช้ Hibernate object references an unsaved transient instance - save the transient instance before flushing
610 java  hibernate  jpa  orm  entity 

18
PersistentObjectException: เอนทิตีที่แยกออกมาถูกส่งผ่านเพื่อคงอยู่โดย JPA และ Hibernate
ฉันมีรูปแบบวัตถุ JPA-ยืนกรานที่มีหลายต่อหนึ่งความสัมพันธ์: การมีจำนวนมากAccount มีหนึ่งTransactionsTransactionAccount นี่คือตัวอย่างของรหัส: @Entity public class Transaction { @Id @GeneratedValue(strategy = GenerationType.AUTO) private Long id; @ManyToOne(cascade = {CascadeType.ALL},fetch= FetchType.EAGER) private Account fromAccount; .... @Entity public class Account { @Id @GeneratedValue(strategy = GenerationType.AUTO) private Long id; @OneToMany(cascade = {CascadeType.ALL},fetch= FetchType.EAGER, mappedBy = "fromAccount") private Set<Transaction> transactions; ฉันสามารถสร้างAccountวัตถุเพิ่มธุรกรรมไปยังAccountวัตถุนั้นและคงวัตถุไว้อย่างถูกต้อง แต่เมื่อฉันสร้างธุรกรรมโดยใช้บัญชีที่มีอยู่แล้วและยืนยันการทำธุรกรรมฉันจะได้รับข้อยกเว้น: เกิดจาก: …
237 java  hibernate  jpa  entity  persist 



4
ความแตกต่างระหว่าง persist () และ merge () ใน JPA และ Hibernate คืออะไร?
ความแตกต่างระหว่าง persist () และ merge () ใน Hibernate คืออะไร? persist() สามารถสร้างแบบสอบถาม UPDATE & INSERT เช่น: SessionFactory sef = cfg.buildSessionFactory(); Session session = sef.openSession(); A a=new A(); session.persist(a); a.setName("Mario"); session.flush(); ในกรณีนี้จะมีการสร้างแบบสอบถามดังนี้: Hibernate: insert into A (NAME, ID) values (?, ?) Hibernate: update A set NAME=? where ID=? ดังนั้นpersist()วิธีการสามารถสร้างส่วนแทรกและการอัปเดต ขณะนี้มีmerge(): SessionFactory sef …
119 java  hibernate  jpa  orm  entity 

9
วิธีการลบออบเจ็กต์ด้วย id ด้วยเอนทิตีเฟรมเวิร์ก
สำหรับฉันแล้วดูเหมือนว่าฉันต้องดึงข้อมูลวัตถุก่อนที่จะลบด้วยกรอบเอนทิตีดังต่อไปนี้ var customer = context.Customers.First(c => c.Id == 1); context.DeleteObject(customer); context.Savechanges(); ดังนั้นฉันต้องตีฐานข้อมูลสองครั้ง มีวิธีที่ง่ายกว่านี้ไหม

1
cascade = {“ remove”} VS orphanRemoval = true VS ondelete = "CASCADE
ฉันพยายามรวบรวมข้อมูลบางอย่างเกี่ยวกับวิธีต่อไปนี้เพื่อลบเอนทิตีลูกโดยอัตโนมัติเมื่อเอนทิตีแม่ถูกลบ ดูเหมือนว่าวิธีที่พบมากที่สุดคือการใช้หนึ่งในบรรดาสามคำอธิบายประกอบ: น้ำตก = { "ลบ"}หรือorphanRemoval = trueหรือondelete = "น้ำตก" ฉันสับสนเล็กน้อยเกี่ยวกับข้อที่สาม: ondelete = "CASCADE"เนื่องจากคำอธิบายในเอกสารอย่างเป็นทางการของหลักคำสอนเกี่ยวกับเรื่องนี้หายากมาก) และฉันจะชอบถ้ามีคนยืนยันข้อมูลต่อไปนี้ที่ฉันรวบรวมและเข้าใจจากการวิจัยของฉันเกี่ยวกับ สุทธิและประสบการณ์ ... มันทำอะไร cascade = {"remove"} ==> เอนทิตีทางด้านผกผันจะถูกลบเมื่อเอนทิตีฝั่งเจ้าของคือ แม้ว่าคุณจะอยู่ในหลายกลุ่มที่มีเอนทิตีด้านการเป็นเจ้าของอื่น - ควรใช้ในการรวบรวม (ดังนั้นในความสัมพันธ์ OneToMany หรือ ManyToMany) - การใช้งานใน ORM orphanRemoval = true ==> เอนทิตีที่อยู่ด้านผกผันจะถูกลบเมื่อเอนทิตีฝั่งเจ้าของคือและไม่ได้เชื่อมต่อกับเอนทิตีฝั่งที่เป็นเจ้าของอื่น ๆ อีกต่อไป (อ้างอิง คำสอน official_doc - การนำไปใช้ใน ORM - สามารถใช้ได้กับ OneToOne, OnetoMany …

15
ข้อยกเว้น EF 4.1“ ผู้ให้บริการไม่ส่งคืนสตริง ProviderManifestToken”
ฉันพยายามทำซ้ำตัวอย่างที่พบใน MSDN ฉันใช้ ASP.NET และ EF 4.1 (CTP?) ฉันใช้ NuGet เพื่อติดตั้งแพ็คเกจ EntityFramework ฉันได้รับข้อผิดพลาดนี้: The provider did not return a ProviderManifestToken string... และไม่มีการสร้างฐานข้อมูล นี่คือสตริงการเชื่อมต่อของฉัน: <add name="HospitalContext" connectionString= "data source=.\SQLExpress;initial catalog=NewTestDB;integrated security=True;" providerName="System.Data.SqlClient"/> นี่คือรหัสของฉัน: var pat = new Patient { Name = "Shane123132524356436435234" }; db.Patients.Add(pat); var labResult = new LabResult { Result …
88 asp.net  sql  entity 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.