<PackageReference Include="Microsoft.Extensions.Configuration" Version="10.0.0-rc.1.25451.107" />

StreamConfigurationProvider

Defines the core behavior of stream-based configuration providers and provides a base for derived classes.
using System; using System.IO; using System.Runtime.CompilerServices; namespace Microsoft.Extensions.Configuration { [System.Runtime.CompilerServices.NullableContext(1)] [System.Runtime.CompilerServices.Nullable(0)] public abstract class StreamConfigurationProvider : ConfigurationProvider { private bool _loaded; public StreamConfigurationSource Source { get; } public StreamConfigurationProvider(StreamConfigurationSource source) { ExceptionPolyfills.ThrowIfNull(source, "source"); Source = source; } public abstract void Load(Stream stream); public override void Load() { if (_loaded) throw new InvalidOperationException(System.SR.StreamConfigurationProvidersAlreadyLoaded); if (Source.Stream == null) throw new InvalidOperationException(System.SR.StreamConfigurationSourceStreamCannotBeNull); Load(Source.Stream); _loaded = true; } } }