EF6 Ninja Edition Course is Live on Pluralsight

It’s been a long haul and a long wait. I started work on this course, then switched gears to work on the Domain–Driven Design Fundamentals course with Steve Smith. When I returned to work on the EF6 course, a number of minor releases and patch releases had been published so I had to revise much of what I had already recorded, edited and produced.


But today, finally, the full course has been published on Pluralsight.


Entity Framework 6: Ninja Edition
– What’s New in EF6

It is a little over 7 hours long. This is what I would have done had I written another huge book. So if you are looking for my next book, just watch this course! And you can go back to it for reference.


If you don’t have a Pluralsight subscription (and honestly, the $29 monthly fee if you were to just subscribe to watch this course, is less than those huge books), send me a note and I’ll send you a code for a trial. You’ll probably realize quickly that you want a subscription though to continue accessing the enormous library.


Course Description

Entity Framework 6 brings major improvements to EF that allow developers to align their data access with advanced software practices. The biggest news for EF6 is that it is open-source and has gained a lot from developer community input. Features with broad appeal such as stored procedure mapping in code first, support for the Async/Await pattern when executing queries and commands, simpler patterns for unit testing, and built-in database logging capabilities have gotten a lot of visibility. EF6 is now very extensible with custom Migrations, custom mapping conventions, and the introduction of Dependency Injection patterns to open up low-level DbContext configuration. There are new methods and properties that allow simpler and smarter coding patterns. Rather than present a high level list of the new features, this course dives into each new feature in EF6, ensures that you understand not only what it is for, but how it works, scenarios where you can benefit from it, and gotchas you should watch out for. This course provides a comprehensive look at what EF6 adds to Entity Framework, and it will leave you with the ability to truly benefit from all of the Ninja power that’s been added to this version of EF.


Course Outline
Overview of What’s New in EF6



Introduction



What Is Entity Framework?



What’s in This Course?



What’s in This Module?



A Brief History of Entity Framework



Why EF6?



A Lap Around EF’s CodePlex Site



Overview of Changes to the EF Designer



Overview of New Features



What’s Not (Yet) in EF6



Summary



Resources






Getting to EF6




Introduction

In This Module



Getting EF6 Into New and Old Projects



Updating Projects to EF6



Summary



Resources






Performance and Stability Improvements




Introduction



In This Module



Faster Processing of LINQ’s Enumerable Contains



Faster Mapping View Generation



Using nGen to ‘Pre-JIT’ EF6 Assembly



Reuse Open Database Connections



Create DBs That Are More Scalable and Less Prone to Deadlocks



Connection Resiliency for Transient Database Connections



Digging into the Connection Resiliency Feature



Quick Review



Resources






Changes to the EF Tooling




Introduction



EF Designer History



In This Module



EF Designer’s New MSI Installer



Creating a Code First Model From a Database in the Designer



Database Views in Your Code First Model



Customizing the Code First Designer Templates



Refactoring the Generated POCOs and Model



A Warning About a Naming Conflict With Code First From Database



What Does the Empty Code First Model Wizard Do?



Comparing the Code First Model Wizard to the EF Power Tools



Using EF4 or EF5 With the New Designer



A Notable Change to the Model First Workflow



Why You Still Need the EF Power Tools



Quick Review



Resources






Stored Procedure Mappings for Code First




Introduction



In This Module



Understanding EF Stored Procedure Mappings



Visualizing Stored Procedure Mappings



Differences Between Designer-Based and Code First Model Mappings



Conventions for Procedures Created by Code First



Customizing Mappings to Work With Existing Stored Procedures



Quick Review



Resources






Custom Code First Conventions



Introduction



In This Module



Custom Code First Conventions: Why Would You Want Them?



Custom Conventions Basics With Lightweight Conventions



Using Attributes to Specify Custom Conventions



Encapsulating Custom Conventions



Understanding and Controlling Execution Order



Model-Based Conventions



Extending Existing Conventions



Quick Review



Resources






More Code First Goodies




Introduction



In This Module



Database Index Support in Code First



Adding Indexes With Fluent API



Setting the Default Database Schema



Using AddFromAssembly to Load Conventions and Configurations



Understanding and Fixing How Code First Pluralizes Table Names



Using a PluralizationService to Localize Non-English Table Names



Implementing a Custom Pluralization Rule in Your Data Layer



Mapping to Results of Table Value Functions and Stored Procedures



Quick Review



Resources






Enhancements to Code First Migrations




Introduction



In This Module



Affecting the Schema of the Migrations History Table



Smarter Migrations With Idempotent Scripts



Limitations of Existing Migrations Methods



How Migrations Get From Method to SQL



Create Custom Migrations for Other Database Operations



Why HasColumnAnnotation and HasTableAnnotation?



Implementing a Simple Table Annotation



Implementing More Complicated Annotations



Performance Tweak for MigrateDatabaseToLatestVersion Initializer



Migrate From Multiple Models to a Single Database



Using HasDefaultSchema and ContextKey for Multiple Model Support



Easier Migrations for Multiple Models in a Single Project



Combining Database Initializers and Migrations



Quick Review



Resources






Improved Database Interaction




Introduction



In This Module



Simple Database Logging With the Log Property



Tweaking the Log Functionality



SQLCE Functions for LINQ Queries



Introducing the Async EF6 Methods



Demonstrating the Effect of Asynchronous EF6 Methods



Perception and Performance: Load Testing With Async EF6



Quick Review



Resources






Code-Based DbContext Configurations and Interceptors



Introduction



Why DbConfiguration?



In This Module



Creating and Triggering a DbConfiguration Class



Why Move Config File Settings to Code?



Moving Connection Factory to DbConfiguration



Moving Database Initializers to DbConfiguration



The New NullDatabaseIntializer



Provider Services and DbConfiguration



Tap into the Pipeline With Interceptors



Beyond the Interceptor Basics



What Stops Does the DbCommandInterceptor Make in the Pipeline?



Building an Interceptor for Database Logging



Using Interceptors to Solve Complex Problems



Understanding the Role of Dependency Resolution



Hosting DbConfiguration in External Assemblies



Quick Review



Resources






Sometimes It’s the Little Things



Introduction



In This Module



EF6 and Mocking Frameworks



Writing Tests to Mock Methods Like DbSet.Find



Writing Tests to Mock LINQ Queries



Nested Entities and Complex Types



Fixing the Ambiguous Types Problem



Custom Equals vs. Change Tracker Equals



Smarter LINQ to Entities Queries



Yes, You Can Haz Changes With HasChanges



Quick Review



Resources

 •  0 comments  •  flag
Share on Twitter
Published on November 11, 2014 09:46
No comments have been added yet.


Julia Lerman's Blog

Julia Lerman
Julia Lerman isn't a Goodreads Author (yet), but they do have a blog, so here are some recent posts imported from their feed.
Follow Julia Lerman's blog with rss.