Maison >développement back-end >Tutoriel C#.Net >Explication détaillée d'exemples d'utilisation du fichier de configuration appsettings.json dans le noyau Web (ASP.NET)

Explication détaillée d'exemples d'utilisation du fichier de configuration appsettings.json dans le noyau Web (ASP.NET)

Y2J
Y2Joriginal
2017-04-27 10:11:223987parcourir

Cet article présente principalement comment utiliser le fichier de configuration appsettings.json dans le noyau Web ASP.NET. L'article donne un exemple de code détaillé. Les amis dans le besoin peuvent s'y référer.

Avant-propos

Récemment, j'ai étudié le portage des programmes asp.net vers Linux Il se trouve que le noyau .net est arrivé. alors j'ai commencé à étudier.

La transplantation du code s'est déroulée fondamentalement sans problème, mais j'ai trouvé qu'il n'y avait pas de ConfigurationManager dans le noyau .net et que le fichier de configuration ne pouvait pas être lu et écrit. Il était difficile d'écrire un fichier XML séparé, j'ai donc cherché sur Google. et j'ai trouvé une méthode, je l'ai donc enregistré comme suit, Pour faciliter les recherches futures :

La méthode est la suivante

Structure du fichier de configuration

public class DemoSettings
{
 public string MainDomain { get; set; }
 public string SiteName { get; set; }
}

affichée dans appsettings.json Effet

appsettings.json

{
 "DemoSettings": {
 "MainDomain": "http://www.mysite.com",
 "SiteName": "My Main Site"
 },
 "Logging": {
 "IncludeScopes": false,
 "LogLevel": {
  "Default": "Debug",
  "System": "Information",
  "Microsoft": "Information"
 }
 }
}

Services de configuration

Configuration d'origine

public void ConfigureServices(IServiceCollection services)
{
 // Add framework services.
 services.AddMvc();
}

Personnalisé

public void ConfigureServices(IServiceCollection services)
{
 // Add framework services.
 services.AddMvc();
 
 // Added - uses IOptions<T> for your settings.
 services.AddOptions();
 
 // Added - Confirms that we have a home for our DemoSettings
 services.Configure<DemoSettings>(Configuration.GetSection("DemoSettings"));
}

Ensuite, après avoir injecté les paramètres dans le contrôleur correspondant, vous pouvez l'utiliser

public class HomeController : Controller
{
 private DemoSettings ConfigSettings { get; set; }
 
 public HomeController(IOptions<DemoSettings> settings)
 {
  ConfigSettings = settings.Value;
 }
 
 public IActionResult Index()
 {
  ViewData["SiteName"] = ConfigSettings.SiteName;
  return View();
 }
}

Résumé

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn