My baby is here! A brand new Entity Framework in the Enterprise.
[See also: New EF Core Course on Pluralsight!]
In 2012, I published a course on Pluralsight called Entity Framework in the Enterprise. Since then I have learned so much, most importantly, I’ve become very active with Domain-Driven Design, even publishing the DDD Fundamentals course that I co-created with Steve Smith. This has had a big impact on how I think about designing and architecting software and in turn,how I approach incorporating EF in to large, complex applications.
I’ve been wanting to re-do that old course to share my new views. I finally began in January of this year, but had a 3 month conference travel hiatus. So while it feels like a baby that I spent 9 months on, it was really only 6 months. Still quite a long time!
The course is now live! Entity Framework in the Enterprise
In the course, I use VS2015 and EF6. Why EF6? Because EF Core is too new. Most of the patterns I discuss and demonstrate are totally applicable to EF Core. There is one thing that is not yet in EF Core: Value Objects, but that is coming. Also the module on testing focuses on mocking and does not take EF Core’s new In Memory provider into account. Other than that, you can use what you learn here with EF Core as well.
I put a lot of thought into this course and I think this comment on the discussion forum for the course expresses it so well:
I just watched Julie Lerman’s prior Entity Framework in the Enterprise three weeks ago, before this new course was released, and boy am I glad she’s updated the course. I had thought the previous version was a bit dated (2016 vs 2012 & EF6 vs EF4) and a bit basic with what Julie refers to as Demo Ware. This updated course goes into more details about architecting projects, improved Moq testing with EF6, and a better explanation of DDD with Bounded Contexts using Schema to segregate areas. I already had a good understanding of EF, DDD, Repositories, UoW, and CQRS before watching and while I wouldn’t set up things 100% this way in my own applications they did jump start some refactorings and rethinking on how I maintain my solution, which is the purpose of these courses, to give fresh ideas as technology evolves, just as Entity Framework has. Thanks for updating the course and for those who have watched the previous version, definitely give this new one a watch.
Sign up for my newsletter so you don't miss my conference & Pluralsight course announcements!
Hi Julie!
I love your course, but can you please pop a copy of your Project on to Github,the folder that you have set up is pretty empty.
The problem is that your content is really great, but I can’t see how to move the entity, or maintain the connections across the class libraries, is there a way to show this as well. (Maybe your course is at a higher level than I am at. 🙂 )
Anyway thanks so much for your course, its really good!
Gary,
Pluralsight has merged the subscriptions so eve with a standard sub, you should have access to the downloads. If you can’t, email [email protected] to get that cleared up.
I”m not sure about your question though…maintain connection across lass libraries. Do you mean share an open connection? If looking at the code doesn’t clear it up, can you explain further although it might be useful to do that in the discussion forum for the course. Let me know!
it’s at: https://app.pluralsight.com/library/courses/entity-framework-enterprise-update/table-of-contents
Hey Julie,
Your content is awesome !
A question, in your DDD course the api controllers have direct access to the dbcontext and repositories.
isn’t the api layer should only know about the services and the service should invoke the repositories?
Hi Julie
Do you have a take on EF DbContext life cycle management.
I am used to work with a DbContext pr request pattern.
Specifically I would like to be able to easily mock a Repository implementation for a sleek BDD cycle.
A problem with a DbContext living for the complete request time is that sync operations might fail, because of EF not being able to handle multiple threads accessing the same context. When do you create and dispose your DBContext in a DDD setup ? Given you want easy mocking in order to be Domain driven and not Database driven.
Hi Julie, just following your new course on EF in the Enterprise.
Any chance of dowloading the software somewhere, I’d like to look at your IObjectSate interface, cause when I try to implement this in one of my projects EF compains about not persisting the StateObject in the Database
Hi Sandor, I’ve not been getting notifications, sorry. The code is at https://app.pluralsight.com/library/courses/entity-framework-enterprise-update/table-of-contents