IOptionsWriter 4.7.0.1
dotnet add package IOptionsWriter --version 4.7.0.1
NuGet\Install-Package IOptionsWriter -Version 4.7.0.1
<PackageReference Include="IOptionsWriter" Version="4.7.0.1" />
paket add IOptionsWriter --version 4.7.0.1
#r "nuget: IOptionsWriter, 4.7.0.1"
// Install IOptionsWriter as a Cake Addin #addin nuget:?package=IOptionsWriter&version=4.7.0.1 // Install IOptionsWriter as a Cake Tool #tool nuget:?package=IOptionsWriter&version=4.7.0.1
IOptionsWriter
Easy way to write appsettings.json or other configuration json file
How to use
Installation
Nuget Package Manager Console:
Install-Package IOptionsWriter
.Net CLI:
dotnet add package IOptionsWriter
Using
IServiceCollection.ConfigureWritable<TOptions>(string sectionName = null, string settingsFile = "appsettings.json", bool reloadAfterWrite = false)
TOptions - type of your settings
sectionName - your configuration section name(default: TOptions type name)
settingsFile - default appsettings.json
reloadAfterWrite - you can enable this option if you have problems detecting file changes or if add the settings file with false value of reloadOnChange parameter (builder.AddJsonFile(appsettings.json, optional: false, reloadOnChange: false);)
Simple sample
appsettings.json:
{
"MySettings": {
"MyOption": "MyValue"
}
}
Startup.cs:
public void ConfigureServices(IServiceCollection services)
{
services
.AddOptions()
.ConfigureWritable<MySettings>();
}
Controllers/MyController.cs:
[Controller]
public class MyController : Controller {
private readonly IOptionsWritable<MySettings> _myOptionsAccessor;
public MyController(IOptionsWritable<MySettings> myOptionsAccessor) {
_myOptionsAccessor = myOptionsAccessor;
}
[HttpPut]
public IActionResult SetMyOptionValue(string value) {
_myOptionsAccessor.Update(options => options.MyOption = value);
}
}
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 | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.1 is compatible. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | 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.1
- JStreamAsyncNet (>= 4.7.0.1)
- Microsoft.AspNetCore.Hosting.Abstractions (>= 2.2.0)
- Microsoft.Extensions.Options (>= 3.1.0)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 3.1.0)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on IOptionsWriter:
Package | Downloads |
---|---|
FyinDotCom.AccessCode.Umbraco
A .net 6 targeted middleware that will render a passcode secured page to block access to a site until the correct passcode is entered. |
GitHub repositories
This package is not used by any popular GitHub repositories.
Easy way to write appsettings.json or other configuration json file