Asp.net core 从asp.net core 3.1中的app.settings.json文件获取ConnectionString值

Asp.net core 从asp.net core 3.1中的app.settings.json文件获取ConnectionString值,asp.net-core,connection-string,Asp.net Core,Connection String,我正在运行一个asp.net核心应用程序版本3.1。其中我必须读取appsettings.json文件中的连接字符串值。我发现了许多与之相关的例子,但没有一个适合我 以下是使用的代码: appsettings.json文件我提供了如下连接字符串值: “连接字符串”:{ “ConnectionString1”:“数据源=192.xxx.x.xxx;数据库=MyDatabase;用户id=myuser;密码=mypass;池=false;连接生存期=10000;” }如果要在appsettings

我正在运行一个asp.net核心应用程序版本3.1。其中我必须读取appsettings.json文件中的连接字符串值。我发现了许多与之相关的例子,但没有一个适合我

以下是使用的代码:

appsettings.json文件我提供了如下连接字符串值:

“连接字符串”:{
“ConnectionString1”:“数据源=192.xxx.x.xxx;数据库=MyDatabase;用户id=myuser;密码=mypass;池=false;连接生存期=10000;”

}
如果要在appsettings.js中获取ConnectionString,可以使用构造函数获取配置,并使用
\u Configuration.GetSection(“xxx”).Value
\u Configuration[“xxx”]

代码:

公共类HomeController:控制器
{
专用只读ILogger\u记录器;
专用只读IConfiguration\u配置;
公共家庭控制器(ILogger记录器、IConfiguration配置)
{
_记录器=记录器;
_配置=配置;
}
公共IActionResult索引()
{
字符串RedirectUrl=_configuration.GetSection(“RedirectUrl”).Value;
返回视图();
}
}
结果:
我的代码中没有问题

appsetitngs.json文件中存在问题。我认为这不是一个问题。 我只是改变了连接字符串的顺序,并将其设置为up,然后在应用程序中获取连接字符串的值

下面是我更改订单的地方:

{
“连接字符串”:{
“ConnectionString1”:“数据源=192.xxx.x.xxx;数据库=MyDatabase;用户id=myuser;密码=myuser;池=false;连接生存期=10000;”
},
“日志记录”:{
“日志级别”:{
“默认值”:“信息”,
“Microsoft”:“警告”,
“Microsoft.Hosting.Lifetime”:“信息”
}
},
“AllowedHosts”:“*”

}
.SetBasePath(Directory.GetCurrentDirectory())
可能指向错误的目录。无论如何,不要在db上下文中使用配置,而是使用选项模式。请提供一些建议,使用IConfigurationRoot,我可以从构造函数调用它来获取connectionstring值,而不是将额外的参数传递给构造函数。我已经更新了我的问题,以获得更多的理解,请提供基于此的解决方案。请尝试
配置GetConnectionString(“ConnectionString”)
public class HomeController : Controller
    {
        private readonly ILogger<HomeController> _logger;
        private readonly IConfiguration _configuration;


        public HomeController(ILogger<HomeController> logger, IConfiguration configuration)
        {
            _logger = logger;
            _configuration = configuration;
        }

        public IActionResult Index()
        {
            string RedirectUrl = _configuration.GetSection("RedirectUrl").Value;
            return View();
        }
}