in addition using the include syntax makes it much more obvious what queries your code performs so increases readability.
When entity framework examines a class which is attached to the context it finds other complex type properties on the class and assumes that they are a foreign key to that table.
There’s a small exception to this rule when it comes down to configuring Dependency Injection which I’ll point out in Part 6.
In the preceding articles in this series, you’ve seen how to build the foundation of a data driven application.
This will be used as a track back in the ORM itself.
The mapping has been altered to include a "References" section.
It seems sensible that we would model this same structure with something like the following: As you can see our relationship in c# has been converted into the equivalent SQL join.
Navigation properties are not loaded by default, so its important to know how and when you need to load navigation properties.
Then add a foreign key constraint from the teacher table primary key to the class teacherid foreign key field. You need to loop all the ‘stock Daily Records’ and delete it one by one. In this example, if a ‘Stock’ is deleted, all its referenced ‘stock Daily Records’ should be deleted from database as well. ) Stock stock = new Stock(); Stock Daily Record stock Daily Records = new Stock Daily Record(); //set the stock and stock Daily Records data stock Daily Stock(stock); Stock Daily Records().add(stock Daily Records); session.save(stock); Hibernate: insert into mkyong.stock (STOCK_CODE, STOCK_NAME) values (? ) Hibernate: insert into mkyong.stock_daily_record (STOCK_ID, PRICE_OPEN, PRICE_CLOSE, PRICE_CHANGE, VOLUME, DATE) values (? How about if you just want to delete two referenced ‘stock Daily Records’ records? You need to delete the ‘stock Daily Records’ one by one. Query q = session.create Query("from Stock where stock Code = :stock Code "); Parameter("stock Code", "4715"); Stock stock = (Stock)q.list().get(0); for (Stock Daily Record sdr : Stock Daily Records()) session.delete(stock); In above cascade delete option, if you delete a Stock , all its referenced ‘stock Daily Records’ will be deleted from database as well. If you rather read this entire series off-line, you can buy the full series as a convenient PDF document that comes with the full source.