YamlConfiguration 1.0.1
dotnet add package YamlConfiguration --version 1.0.1
NuGet\Install-Package YamlConfiguration -Version 1.0.1
<PackageReference Include="YamlConfiguration" Version="1.0.1" />
paket add YamlConfiguration --version 1.0.1
#r "nuget: YamlConfiguration, 1.0.1"
// Install YamlConfiguration as a Cake Addin #addin nuget:?package=YamlConfiguration&version=1.0.1 // Install YamlConfiguration as a Cake Tool #tool nuget:?package=YamlConfiguration&version=1.0.1
YamlConfiguration
YamlConfiguration is a small library to support the YAML format for .NET configuration files, nothing else.
Note Package code it's an adaptation of YAML functionality from a popular (but obsolete) FlexibleConfiguration NuGet package. Unlike FlexibleConfiguration it uses .NET native configuration infrastructure and SharpYaml instead of YamlDotNet to support YAML.
Supported Platforms
- .NET 5 and higher
- .NET Core 2.0 and higher
- .NET Framework 4.6.1 and higher
Getting the Code
- Nuget:
install-package YamlConfiguration
ordotnet add package YamlConfiguration
- Source code:
git clone git@github.com:RedKorshun/YamlConfiguration.git
How to use
Example for console application:
using System;
using System.IO;
using System.Threading.Tasks;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
namespace YamlConfigurationHowTo
{
internal sealed class Startup
{
internal static async Task Main(String[] args)
{
IHostBuilder hostBuilder = new HostBuilder()
.ConfigureAppConfiguration(ConfigureConfiguration)
.ConfigureServices(ConfigureServices);
await hostBuilder.RunConsoleAsync();
}
private static void ConfigureConfiguration(IConfigurationBuilder config)
{
config
.SetBasePath(Directory.GetCurrentDirectory())
.AddYamlFile("appsettings.yaml", optional: false) // <-- Exactly what this package provides
;
}
private static void ConfigureServices(IServiceCollection services)
{
services
.AddHostedService<ApplicationManager>() // <-- Your IHostedService implementation
// Your dependency injection bindings
;
}
}
}
License
Expat for YamlConfiguration and Apache 2.0 for the source code from FlexibleConfiguration.
Alternatives
- NetEscapades.Configuration.Yaml - uses YamlDotNet which is an old and popular but currently its further developing is on hold.
- other.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Microsoft.Extensions.Configuration (>= 6.0.1)
- Microsoft.Extensions.Configuration.Abstractions (>= 6.0.0)
- SharpYaml (>= 2.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
1.0.1 | 1,666 | 7/7/2022 |