I use Unit of work pattern to commit all new, dirty, deleted entities to the DB (using a db_mapper).

Example of entities are: Student and Class

So Student->registerDirty() will add this entity to the dirty pool that will be saved to the DB when commit() will be called.

My problem is that Student can also hold collection of classes (Student->getClasses) and I am not sure how to integrate this into the unit of work pattern so it will only commit the new, updated or deleted.

Can any one recommend me how to integrate this?


Simple : the collection of Classes will record what was added or removed and will commit those items accordingly.

| improve this answer | |
  • So you suggest tracking changes inside the collection class? and then add the whole collection to the UoW. Then commit() will also loop on all 'dirty' collections? – michaelbn Oct 20 '14 at 13:33
  • @michaelbn Yeah. That could work. – Euphoric Oct 20 '14 at 14:33

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.