예제 #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 ReverseEngineerScaffolder(
            IDatabaseModelFactory databaseModelFactory,
            IScaffoldingModelFactory scaffoldingModelFactory,
            IModelCodeGeneratorSelector modelCodeGeneratorSelector,
            ICSharpUtilities cSharpUtilities,
            ICSharpHelper cSharpHelper,
            INamedConnectionStringResolver connectionStringResolver,
            IOperationReporter reporter)
        {
            Check.NotNull(databaseModelFactory, nameof(databaseModelFactory));
            Check.NotNull(scaffoldingModelFactory, nameof(scaffoldingModelFactory));
            Check.NotNull(modelCodeGeneratorSelector, nameof(modelCodeGeneratorSelector));
            Check.NotNull(cSharpUtilities, nameof(cSharpUtilities));
            Check.NotNull(cSharpHelper, nameof(cSharpHelper));
            Check.NotNull(connectionStringResolver, nameof(connectionStringResolver));
            Check.NotNull(reporter, nameof(reporter));

            _databaseModelFactory = databaseModelFactory;
            _factory = scaffoldingModelFactory;
            ModelCodeGeneratorSelector = modelCodeGeneratorSelector;
            _cSharpUtilities           = cSharpUtilities;
            _code = cSharpHelper;
            _connectionStringResolver = connectionStringResolver;
            _reporter = reporter;
        }
 /// <summary>
 ///     Clones this dependency parameter object with one service replaced.
 /// </summary>
 /// <param name="connectionStringResolver"> A replacement for the current dependency of this type. </param>
 /// <returns> A new parameter object with the given service replaced. </returns>
 public RelationalConnectionDependencies With([NotNull] INamedConnectionStringResolver connectionStringResolver)
 => new RelationalConnectionDependencies(
     ContextOptions,
     TransactionLogger,
     ConnectionLogger,
     connectionStringResolver,
     RelationalTransactionFactory,
     CurrentContext);
 /// <summary>
 /// Constructor for the HbsCSharpModelGenerator.
 /// </summary>
 /// <param name="databaseModelFactory">Service to reverse engineer a database into a database model.</param>
 /// <param name="scaffoldingModelFactory">Factory to create a scaffolding model.</param>
 /// <param name="modelCodeGeneratorSelector">Selects a model code generator service for a given programming language.</param>
 /// <param name="cSharpUtilities">C# utilities.</param>
 /// <param name="cSharpHelper">C# helper.</param>
 /// <param name="connectionStringResolver">Connection string resolver.</param>
 public HbsReverseEngineerScaffolder(
     IDatabaseModelFactory databaseModelFactory,
     IScaffoldingModelFactory scaffoldingModelFactory,
     IModelCodeGeneratorSelector modelCodeGeneratorSelector,
     ICSharpUtilities cSharpUtilities,
     ICSharpHelper cSharpHelper,
     INamedConnectionStringResolver connectionStringResolver) : base(databaseModelFactory, scaffoldingModelFactory, modelCodeGeneratorSelector, cSharpUtilities, cSharpHelper, connectionStringResolver)
 {
 }
예제 #4
0
 public CustomScaffolder([NotNull] IDatabaseModelFactory databaseModelFactory, [NotNull] ICustomScaffoldingModelFactory scaffoldingModelFactory, [NotNull] IModelCodeGeneratorSelector modelCodeGeneratorSelector, [NotNull] ICSharpUtilities cSharpUtilities, [NotNull] ICSharpHelper cSharpHelper, [NotNull] INamedConnectionStringResolver connectionStringResolver) : base(databaseModelFactory, scaffoldingModelFactory, modelCodeGeneratorSelector, cSharpUtilities, cSharpHelper, connectionStringResolver)
 {
     _databaseModelFactory       = databaseModelFactory;
     _scaffoldingModelFactory    = scaffoldingModelFactory;
     _modelCodeGeneratorSelector = modelCodeGeneratorSelector;
     _cSharpUtilities            = cSharpUtilities;
     _cSharpHelper             = cSharpHelper;
     _connectionStringResolver = connectionStringResolver;
 }
        /// <summary>
        ///     <para>
        ///         Creates the service dependencies parameter object for a <see cref="RelationalConnection" />.
        ///     </para>
        ///     <para>
        ///         Do not call this constructor directly from either provider or application code as it may change
        ///         as new dependencies are added. Instead, use this type in your constructor so that an instance
        ///         will be created and injected automatically by the dependency injection container. To create
        ///         an instance with some dependent services replaced, first resolve the object from the dependency
        ///         injection container, then replace selected services using the 'With...' methods. Do not call
        ///         the constructor at any point in this process.
        ///     </para>
        /// </summary>
        /// <param name="contextOptions"> The options for the current context instance. </param>
        /// <param name="transactionLogger"> The logger to which transaction messages will be written. </param>
        /// <param name="connectionLogger"> The logger to which connection messages will be written. </param>
        /// <param name="connectionStringResolver"> A service for resolving a connection string from a name. </param>
        public RelationalConnectionDependencies(
            [NotNull] IDbContextOptions contextOptions,
            [NotNull] IDiagnosticsLogger <DbLoggerCategory.Database.Transaction> transactionLogger,
            [NotNull] IDiagnosticsLogger <DbLoggerCategory.Database.Connection> connectionLogger,
            [NotNull] INamedConnectionStringResolver connectionStringResolver)
        {
            Check.NotNull(contextOptions, nameof(contextOptions));
            Check.NotNull(transactionLogger, nameof(transactionLogger));
            Check.NotNull(connectionLogger, nameof(connectionLogger));
            Check.NotNull(connectionStringResolver, nameof(connectionStringResolver));

            ContextOptions           = contextOptions;
            TransactionLogger        = transactionLogger;
            ConnectionLogger         = connectionLogger;
            ConnectionStringResolver = connectionStringResolver;
        }
 /// <summary>
 /// Constructor for the HbsCSharpModelGenerator.
 /// </summary>
 /// <param name="databaseModelFactory">Service to reverse engineer a database into a database model.</param>
 /// <param name="scaffoldingModelFactory">Factory to create a scaffolding model.</param>
 /// <param name="modelCodeGeneratorSelector">Selects a model code generator service for a given programming language.</param>
 /// <param name="cSharpUtilities">C# utilities.</param>
 /// <param name="cSharpHelper">C# helper.</param>
 /// <param name="connectionStringResolver">Connection string resolver.</param>
 public HbsReverseEngineerScaffolderEnhance(
     HandlebarsScaffoldingOptions handlebarsScaffoldingOptions,
     IDatabaseModelFactory databaseModelFactory,
     IScaffoldingModelFactory scaffoldingModelFactory,
     IModelCodeGeneratorSelector modelCodeGeneratorSelector,
     ICSharpUtilities cSharpUtilities,
     ICSharpHelper cSharpHelper,
     INamedConnectionStringResolver connectionStringResolver) : base(databaseModelFactory,
                                                                     scaffoldingModelFactory,
                                                                     modelCodeGeneratorSelector,
                                                                     cSharpUtilities,
                                                                     cSharpHelper,
                                                                     connectionStringResolver)
 {
     HandlebarsScaffoldingOptions = handlebarsScaffoldingOptions ?? HandlebarsScaffoldingOptions.Default;
 }
        /// <summary>
        ///     This API supports the Entity Framework Core infrastructure and is not intended to be used
        ///     directly from your code. This API may change or be removed in future releases.
        /// </summary>
        public ReverseEngineerScaffolder(
            [NotNull] IDatabaseModelFactory databaseModelFactory,
            [NotNull] IScaffoldingModelFactory scaffoldingModelFactory,
            [NotNull] IModelCodeGeneratorSelector modelCodeGeneratorSelector,
            [NotNull] ICSharpUtilities cSharpUtilities,
            [NotNull] INamedConnectionStringResolver connectionStringResolver)
        {
            Check.NotNull(databaseModelFactory, nameof(databaseModelFactory));
            Check.NotNull(scaffoldingModelFactory, nameof(scaffoldingModelFactory));
            Check.NotNull(modelCodeGeneratorSelector, nameof(modelCodeGeneratorSelector));

            _databaseModelFactory = databaseModelFactory;
            _factory = scaffoldingModelFactory;
            ModelCodeGeneratorSelector = modelCodeGeneratorSelector;
            _cSharpUtilities           = cSharpUtilities;
            _connectionStringResolver  = connectionStringResolver;
        }
예제 #8
0
 /// <summary>
 /// Constructor for the HbsCSharpModelGenerator.
 /// </summary>
 /// <param name="databaseModelFactory">Service to reverse engineer a database into a database model.</param>
 /// <param name="scaffoldingModelFactory">Factory to create a scaffolding model.</param>
 /// <param name="modelCodeGeneratorSelector">Selects a model code generator service for a given programming language.</param>
 /// <param name="cSharpUtilities">C# utilities.</param>
 /// <param name="cSharpHelper">C# helper.</param>
 /// <param name="connectionStringResolver">Connection string resolver.</param>
 /// <param name="reporter">Operation reporter.</param>
 public HbsReverseEngineerScaffolder(
     [NotNull] IDatabaseModelFactory databaseModelFactory,
     [NotNull] IScaffoldingModelFactory scaffoldingModelFactory,
     [NotNull] IModelCodeGeneratorSelector modelCodeGeneratorSelector,
     [NotNull] ICSharpUtilities cSharpUtilities,
     [NotNull] ICSharpHelper cSharpHelper,
     [NotNull] INamedConnectionStringResolver connectionStringResolver,
     [NotNull] IOperationReporter reporter)
     : base(databaseModelFactory, scaffoldingModelFactory, modelCodeGeneratorSelector, cSharpUtilities, cSharpHelper, connectionStringResolver, reporter)
 {
     Check.NotNull(databaseModelFactory, nameof(databaseModelFactory));
     Check.NotNull(scaffoldingModelFactory, nameof(scaffoldingModelFactory));
     Check.NotNull(modelCodeGeneratorSelector, nameof(modelCodeGeneratorSelector));
     Check.NotNull(cSharpUtilities, nameof(cSharpUtilities));
     Check.NotNull(cSharpHelper, nameof(cSharpHelper));
     Check.NotNull(connectionStringResolver, nameof(connectionStringResolver));
     Check.NotNull(reporter, nameof(reporter));
 }
        public RelationalConnectionDependencies(
            [NotNull] IDbContextOptions contextOptions,
            [NotNull] IDiagnosticsLogger <DbLoggerCategory.Database.Transaction> transactionLogger,
            [NotNull] IDiagnosticsLogger <DbLoggerCategory.Database.Connection> connectionLogger,
            [NotNull] INamedConnectionStringResolver connectionStringResolver,
            [NotNull] IRelationalTransactionFactory relationalTransactionFactory,
            [NotNull] ICurrentDbContext currentContext)
        {
            Check.NotNull(contextOptions, nameof(contextOptions));
            Check.NotNull(transactionLogger, nameof(transactionLogger));
            Check.NotNull(connectionLogger, nameof(connectionLogger));
            Check.NotNull(connectionStringResolver, nameof(connectionStringResolver));
            Check.NotNull(relationalTransactionFactory, nameof(relationalTransactionFactory));
            Check.NotNull(currentContext, nameof(currentContext));

            ContextOptions               = contextOptions;
            TransactionLogger            = transactionLogger;
            ConnectionLogger             = connectionLogger;
            ConnectionStringResolver     = connectionStringResolver;
            RelationalTransactionFactory = relationalTransactionFactory;
            CurrentContext               = currentContext;
        }