Skip to main content

NotNot.AppSettings by jasonswearingen

Nuget GitHub last commit GitHub Repo stars

Details

Info

info

Name: NotNot.AppSettings

Auto-generate strongly typed C# settings objects from your AppSettings.json.

Author: jasonswearingen

NuGet: https://www.nuget.org/packages/NotNot.AppSettings/

You can find more details at https://github.com/jasonswearingen/NotNot.AppSettings/

Source : https://github.com/jasonswearingen/NotNot.AppSettings/tree/main

Original Readme

note

About

note

Application Settings to strongly typed classes. Generate also from AppSettings development

How to use

Example ( source csproj, source files )

This is the CSharp Project that references NotNot.AppSettings

<Project Sdk="Microsoft.NET.Sdk.Web">

<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
<InvariantGlobalization>true</InvariantGlobalization>
</PropertyGroup>

<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.OpenApi" Version="8.0.1" />
<PackageReference Include="NotNot.AppSettings" Version="1.0.0" OutputItemType="Analyzer" ReferenceOutputAssembly="true" />
<PackageReference Include="Swashbuckle.AspNetCore" Version="6.4.0" />
</ItemGroup>

<ItemGroup>
<AdditionalFiles Update="appsettings.json">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</AdditionalFiles>
</ItemGroup>
<PropertyGroup>
<EmitCompilerGeneratedFiles>true</EmitCompilerGeneratedFiles>
<CompilerGeneratedFilesOutputPath>$(BaseIntermediateOutputPath)\GX</CompilerGeneratedFilesOutputPath>
</PropertyGroup>
</Project>

Generated Files

Those are taken from $(BaseIntermediateOutputPath)\GX


/**
* This file is generated by the NotNot.AppSettings nuget package.
* Do not edit this file directly, instead edit the appsettings.json files and rebuild the project.
**/
using System;
using System.Runtime.CompilerServices;
namespace TestAppSettings.AppSettingsGen;

[CompilerGenerated]
public partial class AppSettings {
public TestAppSettings.AppSettingsGen._AppSettings.Logging? Logging{get; set;}
public string? AllowedHosts{get; set;}
public string? AppName{get; set;}

}

Usefull

Download Example (.NET C# )

Share NotNot.AppSettings

https://ignatandrei.github.io/RSCG_Examples/v2/docs/NotNot.AppSettings

In the same category (FilesToCode)

Chorn.EmbeddedResourceAccessGenerator

EmbedResourceCSharp

Podimo.ConstEmbed

ResXGenerator

RSCG_Utils

ThisAssembly_Resources