* [API documentation](https://learn.microsoft.com/dotnet/api/system.timeprovider)
-
## Feedback & Contributing
Microsoft.Bcl.TimeProvider is released as open source under the [MIT license](https://licenses.nuget.org/MIT). Bug reports and contributions are welcome at [the GitHub repository](https://github.com/dotnet/runtime).
\ No newline at end of file
Provides abstractions of key-value pair based configuration. Interfaces defined in this package are implemented by classes in [Microsoft.Extensions.Configuration](https://www.nuget.org/packages/Microsoft.Extensions.Configuration/) and other configuration packages.
-
## Key Features
<!-- The key features of this package -->
Console.WriteLine(options.NamedProperty); // returns "value for named property"
```
-
## Main Types
<!-- The main types provided in this library -->
Command line configuration provider implementation for [Microsoft.Extensions.Configuration](https://www.nuget.org/packages/Microsoft.Extensions.Configuration/). This package enables you to read configuration parameters from the command line arguments of your application. You can use [CommandLineConfigurationExtensions.AddCommandLine](https://learn.microsoft.com/dotnet/api/microsoft.extensions.configuration.commandlineconfigurationextensions.addcommandline) extension method on `IConfigurationBuilder` to add the command line configuration provider to the configuration builder.
-## Key Features
-
-<!-- The key features of this package -->
-
-*
-*
-*
-
-## How to Use
-
-<!-- A compelling example on how to use this package with code, as well as any specific guidelines for when to use the package -->
-
-## Main Types
-
-<!-- The main types provided in this library -->
-
-The main types provided by this library are:
-
-* ``
-* ``
-* ``
-
## Additional Documentation
<!-- Links to further documentation -->
* [Command-line configuration provider](https://learn.microsoft.com/dotnet/core/extensions/configuration-providers#command-line-configuration-provider)
* [API documentation](https://learn.microsoft.com/dotnet/api/microsoft.extensions.configuration.commandline)
-## Related Packages
-
-<!-- The related packages associated with this package -->
-
## Feedback & Contributing
<!-- How to provide feedback on this package and contribute to it -->
Environment variables configuration provider implementation for [Microsoft.Extensions.Configuration](https://www.nuget.org/packages/Microsoft.Extensions.Configuration/). This package enables you to read configuration parameters from environment variables. You can use [EnvironmentVariablesExtensions.AddEnvironmentVariables](https://learn.microsoft.com/dotnet/api/microsoft.extensions.configuration.environmentvariablesextensions.addenvironmentvariables) extension method on `IConfigurationBuilder` to add the environment variables configuration provider to the configuration builder.
-## Key Features
-
-<!-- The key features of this package -->
-
-*
-*
-*
-
## How to Use
<!-- A compelling example on how to use this package with code, as well as any specific guidelines for when to use the package -->
}
```
-## Main Types
-
-<!-- The main types provided in this library -->
-
-The main types provided by this library are:
-
-* ``
-* ``
-* ``
-
## Additional Documentation
<!-- Links to further documentation -->
* [Environment variable configuration provider](https://learn.microsoft.com/dotnet/core/extensions/configuration-providers#environment-variable-configuration-provider)
* [API documentation](https://learn.microsoft.com/dotnet/api/microsoft.extensions.configuration.environmentvariables)
-## Related Packages
-
-<!-- The related packages associated with this package -->
-
## Feedback & Contributing
<!-- How to provide feedback on this package and contribute to it -->
Provides a base class for file-based configuration providers used with [Microsoft.Extensions.Configuration](https://www.nuget.org/packages/Microsoft.Extensions.Configuration/) and extension methods for configuring them.
-## Key Features
-
-<!-- The key features of this package -->
-
-*
-*
-*
-
-## How to Use
-
-<!-- A compelling example on how to use this package with code, as well as any specific guidelines for when to use the package -->
-
-## Main Types
-
-<!-- The main types provided in this library -->
-
-The main types provided by this library are:
-
-* ``
-* ``
-* ``
-
## Additional Documentation
<!-- Links to further documentation -->
* [Microsoft.Extensions.Configuration.FileConfigurationProvider](https://learn.microsoft.com/dotnet/api/microsoft.extensions.configuration.fileconfigurationprovider)
* [Microsoft.Extensions.Configuration.FileConfigurationExtensions](https://learn.microsoft.com/dotnet/api/microsoft.extensions.configuration.fileconfigurationextensions)
-## Related Packages
-
-<!-- The related packages associated with this package -->
-
## Feedback & Contributing
<!-- How to provide feedback on this package and contribute to it -->
INI configuration provider implementation for [Microsoft.Extensions.Configuration](https://www.nuget.org/packages/Microsoft.Extensions.Configuration/). This package enables you to read configuration parameters from [INI files](https://en.wikipedia.org/wiki/INI_file). You can use [IniConfigurationExtensions.AddIniFile](https://learn.microsoft.com/dotnet/api/microsoft.extensions.configuration.iniconfigurationextensions.addinifile) extension method on `IConfigurationBuilder` to add INI configuration provider to the configuration builder.
-## Key Features
-
-<!-- The key features of this package -->
-
-*
-*
-*
-
-## How to Use
-
-<!-- A compelling example on how to use this package with code, as well as any specific guidelines for when to use the package -->
-
-## Main Types
-
-<!-- The main types provided in this library -->
-
-The main types provided by this library are:
-
-* ``
-* ``
-* ``
-
## Additional Documentation
<!-- Links to further documentation -->
* [INI configuration provider](https://learn.microsoft.com/dotnet/core/extensions/configuration-providers#ini-configuration-provider)
* [API documentation](https://learn.microsoft.com/dotnet/api/microsoft.extensions.configuration.ini)
-## Related Packages
-
-<!-- The related packages associated with this package -->
-
## Feedback & Contributing
<!-- How to provide feedback on this package and contribute to it -->
JSON configuration provider implementation for [Microsoft.Extensions.Configuration](https://www.nuget.org/packages/Microsoft.Extensions.Configuration/). This package enables you to read your application's settings from a JSON file. You can use [JsonConfigurationExtensions.AddJsonFile](https://docs.microsoft.com/dotnet/api/microsoft.extensions.configuration.jsonconfigurationextensions.addjsonfile) extension method on `IConfigurationBuilder` to add the JSON configuration provider to the configuration builder.
-## Key Features
-
-<!-- The key features of this package -->
-
-*
-*
-*
-
## How to Use
<!-- A compelling example on how to use this package with code, as well as any specific guidelines for when to use the package -->
</ItemGroup>
```
-## Main Types
-
-<!-- The main types provided in this library -->
-
-The main types provided by this library are:
-
-* ``
-* ``
-* ``
-
## Additional Documentation
<!-- Links to further documentation -->
* [JSON configuration provider](https://learn.microsoft.com/dotnet/core/extensions/configuration-providers#json-configuration-provider)
* [API documentation](https://learn.microsoft.com/dotnet/api/microsoft.extensions.configuration.json)
-## Related Packages
-
-<!-- The related packages associated with this package -->
-
## Feedback & Contributing
<!-- How to provide feedback on this package and contribute to it -->
User secrets configuration provider implementation for [Microsoft.Extensions.Configuration](https://www.nuget.org/packages/Microsoft.Extensions.Configuration/). User secrets mechanism enables you to override application configuration settings with values stored in the local secrets file. You can use [UserSecretsConfigurationExtensions.AddUserSecrets](https://learn.microsoft.com/dotnet/api/microsoft.extensions.configuration.usersecretsconfigurationextensions.addusersecrets) extension method on `IConfigurationBuilder` to add user secrets provider to the configuration builder.
-## Key Features
-
-<!-- The key features of this package -->
-
-*
-*
-*
-
-## How to Use
-
-<!-- A compelling example on how to use this package with code, as well as any specific guidelines for when to use the package -->
-
-## Main Types
-
-<!-- The main types provided in this library -->
-
-The main types provided by this library are:
-
-* ``
-* ``
-* ``
-
## Additional Documentation
<!-- Links to further documentation -->
* [Safe storage of app secrets in development in ASP.NET Core](https://learn.microsoft.com/aspnet/core/security/app-secrets)
* [API documentation](https://learn.microsoft.com/dotnet/api/microsoft.extensions.configuration.usersecrets)
-## Related Packages
-
-<!-- The related packages associated with this package -->
-
## Feedback & Contributing
<!-- How to provide feedback on this package and contribute to it -->
XML configuration provider implementation for [Microsoft.Extensions.Configuration](https://www.nuget.org/packages/Microsoft.Extensions.Configuration/). This package enables you to read configuration parameters from XML files. You can use [XmlConfigurationExtensions.AddXmlFile](https://learn.microsoft.com/dotnet/api/microsoft.extensions.configuration.xmlconfigurationextensions.addxmlfile) extension method on `IConfigurationBuilder` to add XML configuration provider to the configuration builder.
-## Key Features
-
-<!-- The key features of this package -->
-
-*
-*
-*
-
## How to Use
<!-- A compelling example on how to use this package with code, as well as any specific guidelines for when to use the package -->
</ItemGroup>
```
-## Main Types
-
-<!-- The main types provided in this library -->
-
-The main types provided by this library are:
-
-* ``
-* ``
-* ``
-
## Additional Documentation
<!-- Links to further documentation -->
* [XML configuration provider](https://learn.microsoft.com/dotnet/core/extensions/configuration-providers#xml-configuration-provider)
* [API documentation](https://learn.microsoft.com/dotnet/api/microsoft.extensions.configuration.xml)
-## Related Packages
-
-<!-- The related packages associated with this package -->
-
## Feedback & Contributing
<!-- How to provide feedback on this package and contribute to it -->
By default, the dependency manifest contains information about the application's target framework and runtime dependencies. Set the [PreserveCompilationContext](https://docs.microsoft.com/dotnet/core/project-sdk/msbuild-props#preservecompilationcontext) project property to `true` to additionally include information about reference assemblies used during compilation.
-## Key Features
-
-<!-- The key features of this package -->
-
-*
-*
-*
-
## How to Use
<!-- A compelling example on how to use this package with code, as well as any specific guidelines for when to use the package -->
}
```
-## Main Types
-
-<!-- The main types provided in this library -->
-
-The main types provided by this library are:
-
-* ``
-* ``
-* ``
-
## Additional Documentation
<!-- Links to further documentation -->
* [Microsoft.Extensions.DependencyModel namespace](https://docs.microsoft.com/dotnet/api/microsoft.extensions.dependencymodel)
* [Microsoft.Extensions.DependencyModel.DependencyContext](https://docs.microsoft.com/dotnet/api/microsoft.extensions.dependencymodel.dependencycontext)
-## Related Packages
-
-<!-- The related packages associated with this package -->
-
## Feedback & Contributing
<!-- How to provide feedback on this package and contribute to it -->
## About
+
+<!-- A description of the package and where one can find more documentation -->
+
Contains the .NET Generic Host `HostBuilder` which layers on the `Microsoft.Extensions.Hosting.Abstractions` package.
## Key Features
+
+<!-- The key features of this package -->
+
* Contains the .NET Generic Host `HostBuilder`.
## How to Use
+
+<!-- A compelling example on how to use this package with code, as well as any specific guidelines for when to use the package -->
+
For a console app project:
-```cs
+```C#
using (IHost host = new HostBuilder().Build())
{
var lifetime = host.Services.GetRequiredService<IHostApplicationLifetime>();
```
## Main Types
+
+<!-- The main types provided in this library -->
+
The main types provided by this library are:
+
* `Microsoft.Extensions.Host`.
* `Microsoft.Extensions.Hosting.HostApplicationBuilder`
* `Microsoft.Extensions.Hosting.HostBuilder`
* `Microsoft.Extensions.Hosting.IHostedLifecycleService`
## Additional Documentation
+
+<!-- Links to further documentation. Remove conceptual documentation if not available for the library. -->
+
* [Generic host](https://learn.microsoft.com/dotnet/core/extensions/generic-host)
* API documentation
- [Host](https://learn.microsoft.com/dotnet/api/microsoft.extensions.hosting.host)
- [HostBuilder](https://learn.microsoft.com/dotnet/api/microsoft.extensions.hosting.hostbuilder)
## Related Packages
+
+<!-- The related packages associated with this package -->
+
- `Microsoft.Extensions.Configuration`
- `Microsoft.Extensions.DependencyInjection`
- `Microsoft.Extensions.Hosting.Abstractions`
* Allow logging to the console using the [Microsoft.Extensions.Logging](https://www.nuget.org/packages/Microsoft.Extensions.Logging/) package.
* Provide extension methods for the [ILoggingBuilder](https://learn.microsoft.com/dotnet/api/microsoft.extensions.logging.iloggingbuilder) and [ILoggerProviderConfiguration](https://learn.microsoft.com/dotnet/api/microsoft.extensions.logging.configuration.iloggerproviderconfiguration-1) classes.
-
## How to Use
<!-- A compelling example on how to use this package with code, as well as any specific guidelines for when to use the package -->
<!-- A compelling example on how to use this package with code, as well as any specific guidelines for when to use the package -->
+```C#
+using System.Collections.Immutable;
+
+// Create immutable set of strings
+ImmutableHashSet<string> colors = ImmutableHashSet.Create("Red", "Green", "Blue");
+
+// Create a new set by adding and removing items from the original set
+ImmutableHashSet<string> colorsModified = colors.Remove("Red").Add("Orange");
+
+foreach (string s in colorsModified)
+{
+ Console.WriteLine(s);
+}
+
+/* Example output:
+ Blue
+ Green
+ Orange
+ */
+ ```
+
## Main Types
<!-- The main types provided in this library -->
The main types provided by this library are:
-* ``
-* ``
-* ``
+* `System.Collections.Immutable.ImmutableArray`
+* `System.Collections.Immutable.ImmutableArray<T>`
+* `System.Collections.Immutable.ImmutableDictionary`
+* `System.Collections.Immutable.ImmutableDictionary<TKey,TValue>`
+* `System.Collections.Immutable.ImmutableHashSet`
+* `System.Collections.Immutable.ImmutableHashSet<T>`
+* `System.Collections.Immutable.ImmutableList`
+* `System.Collections.Immutable.ImmutableList<T>`
+* `System.Collections.Immutable.ImmutableQueue`
+* `System.Collections.Immutable.ImmutableQueue<T>`
+* `System.Collections.Immutable.ImmutableSortedDictionary`
+* `System.Collections.Immutable.ImmutableSortedDictionary<TKey,TValue>`
+* `System.Collections.Immutable.ImmutableSortedSet`
+* `System.Collections.Immutable.ImmutableSortedSet<T>`
+* `System.Collections.Immutable.ImmutableStack`
+* `System.Collections.Immutable.ImmutableStack<T>`
## Additional Documentation
- [Collections and Data Structures](https://docs.microsoft.com/dotnet/standard/collections/)
- [API documentation](https://docs.microsoft.com/dotnet/api/system.collections.immutable)
-## Related Packages
-
-<!-- The related packages associated with this package -->
-
## Feedback & Contributing
<!-- How to provide feedback on this package and contribute to it -->
Provides types that support using XML configuration files (`app.config`). This package exists only to support migrating existing .NET Framework code that already uses System.Configuration. When writing new code, use another configuration system instead, such as [Microsoft.Extensions.Configuration](https://www.nuget.org/packages/Microsoft.Extensions.Configuration/).
-## Key Features
-
-<!-- The key features of this package -->
-
-*
-*
-*
-
## How to Use
<!-- A compelling example on how to use this package with code, as well as any specific guidelines for when to use the package -->
The main types provided by this library are:
-* ``
-* ``
-* ``
+* `System.Configuration.Configuration`
+* `System.Configuration.ConfigurationManager`
## Additional Documentation
The `System.Reflection.Metadata` library is included in the .NET Runtime shared framework. The package can be installed when you need to use it in other target frameworks.
-## Key Features
-
-<!-- The key features of this package -->
-
-*
-*
-*
-
## How to Use
<!-- A compelling example on how to use this package with code, as well as any specific guidelines for when to use the package -->
Provides read-only reflection on assemblies in an isolated context with support for assemblies that target different processor architectures and runtimes. Using MetadataLoadContext enables you to inspect assemblies without loading them into the main execution context. Assemblies in MetadataLoadContext are treated only as metadata, that is, you can read information about their members, but cannot execute any code contained in them.
-## Key Features
-
-<!-- The key features of this package -->
-
-*
-*
-*
-
## How to Use
<!-- A compelling example on how to use this package with code, as well as any specific guidelines for when to use the package -->
The main types provided by this library are:
-* ``
-* ``
-* ``
+* `System.Reflection.MetadataLoadContext`
+* `System.Reflection.MetadataAssemblyResolver`
## Additional Documentation
* [System.Reflection.MetadataLoadContext](https://docs.microsoft.com/dotnet/api/system.reflection.metadataloadcontext)
* [System.Reflection.MetadataAssemblyResolver](https://docs.microsoft.com/dotnet/api/system.reflection.metadataassemblyresolver)
-## Related Packages
-
-<!-- The related packages associated with this package -->
-
## Feedback & Contributing
<!-- How to provide feedback on this package and contribute to it -->
<!-- The key features of this package -->
-*
-*
-*
-
-## How to Use
-
-<!-- A compelling example on how to use this package with code, as well as any specific guidelines for when to use the package -->
+* Use caching facilities like in ASP.NET, but without a dependency on the System.Web assembly.
+* Extensible caching mechanism
+* Possible to create custom caching providers
## Main Types