Azure备份,应用程序设置中的连接字符串是否会导致现有应用程序出现问题?

Azure备份,应用程序设置中的连接字符串是否会导致现有应用程序出现问题?,azure,asp.net-core,Azure,Asp.net Core,我们已将应用程序服务升级到S1,并希望设置自动备份。这是一个带有SQL数据库的.net核心应用程序。对于数据库部分,我得到以下信息: 在应用程序中未找到配置的SQL数据库或MySQL类型的受支持连接字符串 我已经采用了这个由以前的开发人员创建的项目,现在我的脚湿了。我知道我可以在应用程序设置中添加连接字符串,但我担心这会破坏应用程序 例如,现在连接字符串是在代码本身的appsettings.json { "Data": { "ConnectionStrings": {

我们已将应用程序服务升级到S1,并希望设置自动备份。这是一个带有SQL数据库的.net核心应用程序。对于数据库部分,我得到以下信息:

在应用程序中未找到配置的SQL数据库或MySQL类型的受支持连接字符串

我已经采用了这个由以前的开发人员创建的项目,现在我的脚湿了。我知道我可以在应用程序设置中添加连接字符串,但我担心这会破坏应用程序

例如,现在连接字符串是在代码本身的
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时)是:

  • 设置应用程序和SQL数据库的自动备份
  • 在运行时不会影响应用程序本身
  • 虽然看起来很傻,但我对这种环境还不熟悉,只是有点偏执。我的直觉告诉我,代码将执行并保持不变,但在部署时,我不确定Azure是否在幕后做了一些事情,这将导致它在我面前爆炸

    在应用程序中未找到配置的SQL数据库或MySQL类型的受支持连接字符串

    要连接到数据库,其连接字符串必须存在于azure portal上应用程序的
    应用程序设置
    页面的
    连接字符串
    部分。 所以,我建议您可以转到门户来检查配置连接字符串值是否正确或可用。正确的连接字符串格式列表位于以下位置

    有关更多详细信息,请参阅

    最后也是最重要的一点是,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=开始。没有帮助。