Comment charger appsetting.json section dans le Dictionnaire .NET de Base?

Je suis familier w/chargement d'un appsettings.json section dans un objet fortement typé .NET de Base démarrage.cs. Par exemple:

public class CustomSection 
{
   public int A {get;set;}
   public int B {get;set;}
}

//In Startup.cs
services.Configure<CustomSection>(Configuration.GetSection("CustomSection"));

//Inject an IOptions instance
public HomeController(IOptions<CustomSection> options) 
{
    var settings = options.Value;
}

J'ai un appsettings.json section qui de paires clé/valeur varie en nombre et nom au fil du temps. Par conséquent, il n'est pas pratique pour coder en dur les noms de propriété dans une classe, puisque de nouvelles paires clé/valeur nécessiterait une modification du code dans la classe. Un petit échantillon de quelques paires clé/valeur:

"MobileConfigInfo": {
    "appointment-confirmed": "We've booked your appointment. See you soon!",
    "appointments-book": "New Appointment",
    "appointments-null": "We could not locate any upcoming appointments for you.",
    "availability-null": "Sorry, there are no available times on this date. Please try another."
}

Est-il un moyen de charger ces données dans un MobileConfigInfo Dictionnaire de l'objet, puis utilisez l'IOptions modèle à injecter MobileConfigInfo dans un contrôleur?

Hmmm n'est pas vraiment au sujet de cette question ASP.NET de Base et pas .NET de Base? Peu un titre trompeur.

OriginalL'auteur ChrisP | 2017-03-16