protected virtual IModel CreateModel( [NotNull] DbContext context, [CanBeNull] IConventionSetBuilder conventionSetBuilder, [NotNull] IModelValidator validator) { Check.NotNull(context, nameof(context)); Check.NotNull(validator, nameof(validator)); var conventionSet = CreateConventionSet(conventionSetBuilder); var model = new Model(); model.SetProductVersion(ProductInfo.GetVersion()); var modelBuilder = new ModelBuilder(conventionSet, model); FindSets(modelBuilder, context); OnModelCreating(context, modelBuilder); modelBuilder.Validate(); validator.Validate(model); return model; }