示例#1
0
 /// <summary>
 ///     This is an internal API that supports the Entity Framework Core infrastructure and not subject to
 ///     the same compatibility standards as public APIs. It may be changed or removed without notice in
 ///     any release. You should only use it directly in your code with extreme caution and knowing that
 ///     doing so can result in application failures when updating to a new Entity Framework Core release.
 /// </summary>
 public Migrator(
     IMigrationsAssembly migrationsAssembly,
     IHistoryRepository historyRepository,
     IDatabaseCreator databaseCreator,
     IMigrationsSqlGenerator migrationsSqlGenerator,
     IRawSqlCommandBuilder rawSqlCommandBuilder,
     IMigrationCommandExecutor migrationCommandExecutor,
     IRelationalConnection connection,
     ISqlGenerationHelper sqlGenerationHelper,
     ICurrentDbContext currentContext,
     IModelRuntimeInitializer modelRuntimeInitializer,
     IDiagnosticsLogger <DbLoggerCategory.Migrations> logger,
     IRelationalCommandDiagnosticsLogger commandLogger,
     IDatabaseProvider databaseProvider)
 {
     _migrationsAssembly       = migrationsAssembly;
     _historyRepository        = historyRepository;
     _databaseCreator          = (IRelationalDatabaseCreator)databaseCreator;
     _migrationsSqlGenerator   = migrationsSqlGenerator;
     _rawSqlCommandBuilder     = rawSqlCommandBuilder;
     _migrationCommandExecutor = migrationCommandExecutor;
     _connection              = connection;
     _sqlGenerationHelper     = sqlGenerationHelper;
     _currentContext          = currentContext;
     _modelRuntimeInitializer = modelRuntimeInitializer;
     _logger         = logger;
     _commandLogger  = commandLogger;
     _activeProvider = databaseProvider.Name;
 }
 /// <summary>
 ///     This is an internal API that supports the Entity Framework Core infrastructure and not subject to
 ///     the same compatibility standards as public APIs. It may be changed or removed without notice in
 ///     any release. You should only use it directly in your code with extreme caution and knowing that
 ///     doing so can result in application failures when updating to a new Entity Framework Core release.
 /// </summary>
 public SnapshotModelProcessor(
     IOperationReporter operationReporter,
     IModelRuntimeInitializer modelRuntimeInitializer)
 {
     _operationReporter = operationReporter;
     _relationalNames   = new HashSet <string>(
         typeof(RelationalAnnotationNames)
         .GetRuntimeFields()
         .Where(p => p.Name != nameof(RelationalAnnotationNames.Prefix))
         .Select(p => ((string)p.GetValue(null) !)[(RelationalAnnotationNames.Prefix.Length - 1)..]));
示例#3
0
 public TestModelBuilder(
     ConventionSet conventions,
     ModelDependencies modelDependencies,
     ModelConfiguration modelConfiguration,
     IModelRuntimeInitializer modelRuntimeInitializer,
     IDiagnosticsLogger <DbLoggerCategory.Model.Validation> validationLogger)
     : base(conventions, modelDependencies, modelConfiguration)
 {
     _modelRuntimeInitializer = modelRuntimeInitializer;
     _validationLogger        = validationLogger;
 }
 public FakeScaffoldingModelFactory(
     IOperationReporter reporter,
     ICandidateNamingService candidateNamingService,
     IPluralizer pluralizer,
     ICSharpUtilities cSharpUtilities,
     IScaffoldingTypeMapper scaffoldingTypeMapper,
     LoggingDefinitions loggingDefinitions,
     IModelRuntimeInitializer modelRuntimeInitializer)
     : base(reporter, candidateNamingService, pluralizer, cSharpUtilities, scaffoldingTypeMapper, loggingDefinitions, modelRuntimeInitializer)
 {
 }
示例#5
0
        /// <summary>
        ///     This is an internal API that supports the Entity Framework Core infrastructure and not subject to
        ///     the same compatibility standards as public APIs. It may be changed or removed without notice in
        ///     any release. You should only use it directly in your code with extreme caution and knowing that
        ///     doing so can result in application failures when updating to a new Entity Framework Core release.
        /// </summary>
        public Migrator(
            [NotNull] IMigrationsAssembly migrationsAssembly,
            [NotNull] IHistoryRepository historyRepository,
            [NotNull] IDatabaseCreator databaseCreator,
            [NotNull] IMigrationsSqlGenerator migrationsSqlGenerator,
            [NotNull] IRawSqlCommandBuilder rawSqlCommandBuilder,
            [NotNull] IMigrationCommandExecutor migrationCommandExecutor,
            [NotNull] IRelationalConnection connection,
            [NotNull] ISqlGenerationHelper sqlGenerationHelper,
            [NotNull] ICurrentDbContext currentContext,
            [NotNull] IModelRuntimeInitializer modelRuntimeInitializer,
            [NotNull] IDiagnosticsLogger <DbLoggerCategory.Migrations> logger,
            [NotNull] IDiagnosticsLogger <DbLoggerCategory.Database.Command> commandLogger,
            [NotNull] IDatabaseProvider databaseProvider)
        {
            Check.NotNull(migrationsAssembly, nameof(migrationsAssembly));
            Check.NotNull(historyRepository, nameof(historyRepository));
            Check.NotNull(databaseCreator, nameof(databaseCreator));
            Check.NotNull(migrationsSqlGenerator, nameof(migrationsSqlGenerator));
            Check.NotNull(rawSqlCommandBuilder, nameof(rawSqlCommandBuilder));
            Check.NotNull(migrationCommandExecutor, nameof(migrationCommandExecutor));
            Check.NotNull(connection, nameof(connection));
            Check.NotNull(sqlGenerationHelper, nameof(sqlGenerationHelper));
            Check.NotNull(currentContext, nameof(currentContext));
            Check.NotNull(modelRuntimeInitializer, nameof(modelRuntimeInitializer));
            Check.NotNull(logger, nameof(logger));
            Check.NotNull(commandLogger, nameof(commandLogger));
            Check.NotNull(databaseProvider, nameof(databaseProvider));

            _migrationsAssembly       = migrationsAssembly;
            _historyRepository        = historyRepository;
            _databaseCreator          = (IRelationalDatabaseCreator)databaseCreator;
            _migrationsSqlGenerator   = migrationsSqlGenerator;
            _rawSqlCommandBuilder     = rawSqlCommandBuilder;
            _migrationCommandExecutor = migrationCommandExecutor;
            _connection              = connection;
            _sqlGenerationHelper     = sqlGenerationHelper;
            _currentContext          = currentContext;
            _modelRuntimeInitializer = modelRuntimeInitializer;
            _logger         = logger;
            _commandLogger  = commandLogger;
            _activeProvider = databaseProvider.Name;
        }
 public ColumnRemovingScaffoldingModelFactory([NotNull] IOperationReporter reporter, [NotNull] ICandidateNamingService candidateNamingService, [NotNull] IPluralizer pluralizer, [NotNull] ICSharpUtilities cSharpUtilities, [NotNull] IScaffoldingTypeMapper scaffoldingTypeMapper, [NotNull] LoggingDefinitions loggingDefinitions, [NotNull] IModelRuntimeInitializer modelRuntimeInitializer, List <SerializationTableModel> tables, DatabaseType databaseType) :
     base(reporter, candidateNamingService, pluralizer, cSharpUtilities, scaffoldingTypeMapper, loggingDefinitions, modelRuntimeInitializer)
示例#7
0
 public TestModelBuilder CreateModelBuilder(
     ModelDependencies modelDependencies,
     IModelRuntimeInitializer modelRuntimeInitializer,
     IDiagnosticsLogger <DbLoggerCategory.Model.Validation> validationLogger)
 => new(Conventions,