Azure备份,应用程序设置中的连接字符串是否会导致现有应用程序出现问题?
我们已将应用程序服务升级到S1,并希望设置自动备份。这是一个带有SQL数据库的.net核心应用程序。对于数据库部分,我得到以下信息: 在应用程序中未找到配置的SQL数据库或MySQL类型的受支持连接字符串 我已经采用了这个由以前的开发人员创建的项目,现在我的脚湿了。我知道我可以在应用程序设置中添加连接字符串,但我担心这会破坏应用程序 例如,现在连接字符串是在代码本身的Azure备份,应用程序设置中的连接字符串是否会导致现有应用程序出现问题?,azure,asp.net-core,Azure,Asp.net Core,我们已将应用程序服务升级到S1,并希望设置自动备份。这是一个带有SQL数据库的.net核心应用程序。对于数据库部分,我得到以下信息: 在应用程序中未找到配置的SQL数据库或MySQL类型的受支持连接字符串 我已经采用了这个由以前的开发人员创建的项目,现在我的脚湿了。我知道我可以在应用程序设置中添加连接字符串,但我担心这会破坏应用程序 例如,现在连接字符串是在代码本身的appsettings.json { "Data": { "ConnectionStrings": {
appsettings.json
{
"Data": {
"ConnectionStrings": {
"ConnectionString":"Server=****;Initial Catalog=*****;Persist Security Info=False;User ID=*****;Password=*****;MultipleActiveResultSets=True;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;"
//"ConnectionString":"Server=****;Initial Catalog=*****;Persist Security Info=False;User ID=*****;Password=*****;MultipleActiveResultSets=True;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;"
}
},
"Logging": {
"IncludeScopes": false,
"LogLevel": {
"Default": "Debug",
"System": "Information",
"Microsoft": "Information"
}
}
另一个开发人员对其进行设置的方式是,在发布到生产环境时,将临时连接字符串注释掉,并在发布到临时环境时在appsettings.json
中交换。还有另外一个例子不在上面的例子中,只用于localhost
开发
此连接字符串用于Startup.cs
public void ConfigureServices(IServiceCollection services)
{
...
services.AddDbContext<ApplicationDbContext>(options =>
options.UseSqlServer(Configuration["Data:ConnectionStrings:ConnectionString"]));
}
public void配置服务(IServiceCollection服务)
{
...
services.AddDbContext(选项=>
使用SQLServer(配置[“数据:连接字符串:连接字符串]);
}
现在这可能是一个愚蠢的问题,但是如果在Azure设置中的应用程序中,如果我在那里添加一个连接字符串以利用自动备份,我会破坏任何东西吗?我指的是选择应用程序,单击配置应用程序设置,然后添加连接字符串
我现在也不使用插槽。因此,我现在的目标是(当我了解更多关于我没有开发的应用程序并了解如何使用Azure时)是:
应用程序设置
页面的连接字符串
部分。
所以,我建议您可以转到门户来检查配置连接字符串值是否正确或可用。正确的连接字符串格式列表位于以下位置
有关更多详细信息,请参阅
最后也是最重要的一点是,Azure备份功能缓存连接字符串。设置备份后对连接所做的任何更改都不会反映出来
如果更改连接字符串,则必须点击备份刀片服务器中的
重置
按钮,然后再次设置备份。这将确保新的连接字符串被拉入。我刚刚遇到了相同的问题,幸运的是我在另一个web应用程序上有一个可用的连接字符串,tcp:和,1433为我修复了它,它开始显示:
"name": "NameHere",
"value": "Data Source=tcp:sqlservername.database.windows.net,1433;Initial Catalog=DatabaseName;User ID=sa;Password=password",
"type": "SQLAzure",
"slotSetting": true
我不确定我在这里做错了什么,但连接字符串是有效的,但在尝试设置备份时仍然不会显示在列表中。这与我的应用程序中使用的连接字符串相同。我也有同样的问题。我尝试了几种基于microsoft文档的格式,从Server=和Data Source=开始。没有帮助。