While this has been an unfolding process on Ruurd’s blog and on the CodePlex/EFContrib site, today marks an impressive day in the evolution of the PostSharp4EF project that Ruurd Boeke has been working on.
He has used the available interfaces for IPOCO in Entity Framework to create a tool for using Entity Framework in a way that is more affable to Domain Driven developers.
His solution enables client side classes that are not dependant on Entity Framework APIs and supports a fully disconnected tiered application – the thing we have all been struggling to achieve.
Ruurd also solved the XML Serialization problem along the way, though in the meantime, changes to WCF actually solve the problem across the board for all WCF XML Serialization, including Entity Framework objects. So I’m sure that was frustrating for him to have this announced shortly after he completed that arduous step, but think of how much you learned, Ruurd and how much respect you have earned as well! 🙂
PostSharp4EF: Automatically implement IPoco This project uses PostSharp to post-compile your assemblies. When it encounters a simple attribute, it will implement everything needed to use it in EF: Typelevel attributes, EDMscalar attributes, changetracking and default values. This means there are no runtime performance penalties. See Introducing EF Contrib post for more detailed information about this project. The following supporting projects are included as well and will enable the use of full disconnected n-tier usage of your domain objects:
- Circular Serializer: enables the serialization of object graphs (including circular references) with knowledge of ‘original values’.
- Editable Business Objects: does changetracking and provides the serializer with the correct values
Sign up for my newsletter so you don't miss my conference & Pluralsight course announcements!