开发环境操作系统:Windows 10
IDE: VS 2019
SDK: 3.0.100-preview7-012821
服务器环境 ubuntu 18.04.2 server
docker: 18.09.7
镜像版本: mcr.microsoft.com/dotnet/core/sdk 3.0.100-preview7-bionic
docker运行命令
docker run \ --name=MyTest \ -v /etc/localtime:/etc/localtime \ -v /WebSite/MyTest:/webroot \ -p 8000:80 \ -w /wwwroot \ mcr.microsoft.com/dotnet/core/sdk:3.0.100-preview7-bionic \ dotnet /webroot/MyTest.dll
在本地开发环境下,甚至包括我Release以后直接通过dotnet命令运行的结果均正常。但是在服务器的docker环境下就不行了
在appsettins.json中有一段sql的链接配置文件
"ConnectionStrings": { "DefaultConnection": "Data Source=localhost;database=MyTestDB;uid=sa;pwd=123456;MultipleActiveResultSets=true" },
在stratup中使用 Configuration.GetConnectionString("DefaultConnection") 读取不到链接串,总是一个空串。
我尝试通过 configuration.GetSection(“ConnectionStrings:DefaultConnection”) 这种我方法尝试,是可以正常找到节点,但是就是无法输出节点的内容。
请问有遇到类似情况的吗?
建议确认一下是不是被 appsettings.Production.json
中的设置覆盖了
嗯,这个问题我之前也考虑过
但是发布之后,只有appsettings.json和appsettings.Development.json这两个文件,我再docker环境下已经将appsettings.Development.json给删掉了,重新建的容器,依旧不行。
我都在考虑是不是镜像的问题了
这个是我前天才迁移到的Preview7的,之前用Preview6一直没问题。
@写代码的相声演员: 试试把 DefaultConnection
换个名称