簡體   English   中英

如何在Visual Studio代碼中從appsettings.config文件添加和訪問鍵值對?

[英]How to add and access key value pairs from appsettings.config file in visual studio code?

我已經使用.net核心和Visual Studio代碼上的sdk在控制台應用程序中編寫了C#邏輯。 我正在嘗試添加配置文件以配置某些參數,但是,一旦創建了appsettings.json文件,便無法在代碼中訪問它。 需要幫助來訪問配置文件中的值。

using System;
using System.IO;
using Microsoft.Extensions.Configuration;

namespace testapp
{
    class Program
    {
        static void Main(string[] args)
        {
        var appSettings = new Config();
           var config = new ConfigurationBuilder()
             .SetBasePath(Directory.GetCurrentDirectory())
             .AddEnvironmentVariables() //This line doesnt compile 
             .AddJsonFile("appsettings.json", true, true)
             .Build();
           config.Bind(appSettings);       //This line doesnt compile        

            Console.WriteLine("Hello World!");
            Console.WriteLine($" Hello {appSettings.name} !"); 
        }
    }
    public class Config
    {
       public string name{ get; set; }
    }
}

HomeController.cs

    public class HomeController : Controller {

       private readonly IConfiguration _config;

       public HomeController(IConfiguration config) { _config = config; }

       public IActionResult Index() {

          Console.WriteLine(_config.GetSection("AppSettings:Token").Value);

          return View();

           }
   }

appsettings.json

{
  "AppSettings": {
    "Token": "T21pZC1NaXJ6YWVpWhithOutStar*"
  },
  "Logging": {
    "LogLevel": {
      "Default": "Warning"
    }
  },
  "AllowedHosts": "*"
}

嘗試這個 -

using System;
using Microsoft.Extensions.Configuration;

namespace testapp
{
    class Program
    {            
        static void Main(string[] args)
        {
           var appSettings = new Config();
           var config = new ConfigurationBuilder()
             .SetBasePath(Directory.GetCurrentDirectory())
             .AddEnvironmentVariables()
             .AddJsonFile("appsettings.json", true, true)
             .Build();
           config.Bind(appSettings); 

           Console.WriteLine($" Hello {appSettings.name} !");
        }
    }

    public class Config
    {
       public string name{ get; set; }
    }
}

appsettings.json

{
    "name": "appName"
}

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM