The VS designer combines the designer specific info (where entity objects are placed in the diagram) with the actual model information inside an EDMX file.
We only have the model information in the EDMX file. The DbContext class loads the EDMX file at startup and builds with it the internal model for building queries etc.
So you can see the EDMX file (it's xml, you should take a look at it
) as the mapping file for Entity framework. This is also the reason why it's in the persistence project, as it's used by the context.
In 'code first' (which we don't support, as it's not something one would need a designer for
), you have code and a dbcontext, and no edmx file. Instead, the dbcontext builds the edmx internally from the code and the conventions you might have defined.
So in all cases, the edmx file (or better: the EDM model inside it) is required for EF to function.
What we generate is code which is compatible with what the ef designer generates however we have split it into multiple projects (as you then have more flexibility as you can re-use the model project without dragging the context along). It simply utilizes the entity framework classes, e.g. dbcontext and the like.