Chapter 6. Modifying Entities and Saving Changes
So far, we have focused on the many ways to query an EDM to retrieve data from the database. This is only part of the Entity Framework story and the beginning of the life cycle of an entity. Once you have retrieved entities you can modify them, delete them, or even add new ones and then save all of these changes back to the database. In this chapter, we’ll take a high-level look at the way in which the Entity Framework is able to track these changes and get the necessary data back to the database. Then we’ll watch updates, inserts, and deletions in action, not only in code samples, but also in terms of what happens in the database in response.
Later chapters will focus on modifying the default behavior.
Keeping Track of Entities
In the previous chapters, you used an
SampleEntities class (renamed “PEF” in Chapter 5), which inherits from
ObjectContext, to create and execute
queries. You also worked with the objects that were returned by those
queries, whether they were entities, anonymous types, or objects within
DbDataRecord. The nature of this
interaction was to iterate through the objects and extract a few
properties to display in a console window.
The context can also keep track of these entities once they’ve been returned by a query. As your application logic modifies the objects, the context is notified and makes note of changes. The context is responsible for managing the state of its entities, including those ...