ASP.NET应用仅在Ubuntu Server上MySQL连接字符串为null问题求助
ASP.NET应用部署到Ubuntu(linux-arm64)时MySQL连接字符串为空的问题
我有一个使用MySQL而非SQL Server的ASP.NET应用,在Windows开发环境的Debug和Release模式下均运行正常。然而,当将其发布并部署到Ubuntu Server(linux-arm64,独立部署)机器上运行时,出现空引用异常(NRE),提示MySQL connectionString为null。
Startup.cs相关代码片段
//string mySqlConnectionStr = Configuration.GetConnectionString("DefaultConnection"); // NOTE: hard-code because connection string is null on linux; const string mySqlConnectionStr = "Server=localhost; port=3306; Database=aspnet_p24_mysql; user=root; password=root; Persist Security Info=False; Connect Timeout=300"; services.AddDbContext<ApplicationDbContext>(options => options.UseMySql(mySqlConnectionStr, opts => opts.ServerVersion(ServerVersion.AutoDetect(mySqlConnectionStr))) );
appsettings.json配置(已尝试硬编码连接字符串)
{ "ConnectionStrings": { "DefaultConnection": "Server=localhost; port=3306; Database=aspnet_p24_mysql; user=root; password=root; Persist Security Info=False; Connect Timeout=300" }, ... }
我已确认ConnectionStrings没有拼写错误,且该问题仅出现在已部署的Ubuntu机器上,搜索相关问题和解答后未找到匹配内容。
内容的提问来源于stack exchange,提问作者3x3y3z3t
相关产品推荐
相关产品推荐

