Example #1
0
        public static IConfigurationBuilder AddSqliteConfigurationProvider(this IConfigurationBuilder builder,
                                                                           IFileProvider provider,
                                                                           string path, bool reloadOnChange, IConfiguration configSeed = null,
                                                                           Action <SaveConfigurationOptions> configureAction           = null)
        {
            var saveConfig = new SaveConfigurationOptions();

            configureAction?.Invoke(saveConfig);

            if (provider == null && Path.IsPathRooted(path))
            {
                provider = new PhysicalFileProvider(Path.GetDirectoryName(path));
                path     = Path.GetFileName(path);
            }

            var source = new SqliteConfigurationSource(path, saveConfig)
            {
                ReloadOnChange = reloadOnChange,
                ConfigSeed     = configSeed,
                SeedStrategy   = SeedStrategy.Initialize,
                FileProvider   = provider
            };

            builder.Add(source);
            return(builder);
        }
 public SqliteConfigurationProvider(SqliteConfigurationSource source) => _source = source;