ICSharpMigrationOperationGenerator (Interface) (Base) (Mine). This works, and is all well and good for my current purposes, but I realize that this approach of extending the main EF generator, and replacing it in the DI container means that you can only pull this trick once. If someone wanted to use my package, but also use another package that offers a custom migrations generator of the same type I've overridden, they can't.