public override void PreConfigureServices(ServiceConfigurationContext context)
        {
            var configurationOptions = new AbpConfigurationBuilderOptions
            {
                BasePath        = @"D:\Projects\Development\Abp\FeaturesValidation\Redis",
                EnvironmentName = "Development"
            };

            context.Services.ReplaceConfiguration(ConfigurationHelper.BuildConfiguration(configurationOptions));
        }
        /// <summary>
        /// 好像被VirtualFileSystemApplicationBuilderExtensions替代了
        /// </summary>
        /// <param name="env"></param>
        /// <param name="options"></param>
        /// <returns></returns>
        public static IConfigurationRoot BuildConfiguration(
            this IWebHostEnvironment env,
            AbpConfigurationBuilderOptions options = null)
        {
            options = options ?? new AbpConfigurationBuilderOptions();

            if (options.BasePath.IsNullOrEmpty())
            {
                options.BasePath = env.ContentRootPath;
            }

            if (options.EnvironmentName.IsNullOrEmpty())
            {
                options.EnvironmentName = env.EnvironmentName;
            }

            return(ConfigurationHelper.BuildConfiguration(options));
        }
Esempio n. 3
0
    public static IConfigurationRoot BuildConfiguration(
        AbpConfigurationBuilderOptions options       = null,
        Action <IConfigurationBuilder> builderAction = null)
    {
        options = options ?? new AbpConfigurationBuilderOptions();

        if (options.BasePath.IsNullOrEmpty())
        {
            options.BasePath = Directory.GetCurrentDirectory();
        }

        var builder = new ConfigurationBuilder()
                      .SetBasePath(options.BasePath)
                      .AddJsonFile(options.FileName + ".json", optional: true, reloadOnChange: true);

        if (!options.EnvironmentName.IsNullOrEmpty())
        {
            builder = builder.AddJsonFile($"{options.FileName}.{options.EnvironmentName}.json", optional: true, reloadOnChange: true);
        }

        if (options.EnvironmentName == "Development")
        {
            if (options.UserSecretsId != null)
            {
                builder.AddUserSecrets(options.UserSecretsId);
            }
            else if (options.UserSecretsAssembly != null)
            {
                builder.AddUserSecrets(options.UserSecretsAssembly, true);
            }
        }

        builder = builder.AddEnvironmentVariables(options.EnvironmentVariablesPrefix);

        if (options.CommandLineArgs != null)
        {
            builder = builder.AddCommandLine(options.CommandLineArgs);
        }

        builderAction?.Invoke(builder);

        return(builder.Build());
    }
Esempio n. 4
0
 public AbpApplicationCreationOptions([NotNull] IServiceCollection services)
 {
     Services      = Check.NotNull(services, nameof(services));
     PlugInSources = new PlugInSourceList();
     Configuration = new AbpConfigurationBuilderOptions();
 }