如何在azure中为我的Web应用程序设置连接字符串?

时间:2016-05-13 05:12:23

标签: c# asp.net azure

我使用ASP.Net 5 Web应用程序模板创建了一个Web应用程序,并将其发布到Azure Web应用程序。

在我的网络应用的“设置”部分,我可以创建数据连接。 如何告诉我的Web应用程序使用此数据连接。

[更新] 我的appsettings.json中的连接字符串的名称是DefaultConnection

2 个答案:

答案 0 :(得分:3)

请试试这个......

  1. 转到Azure网络应用>配置>连接字符串。

  2. 添加名为DefaultConnection的连接字符串。

  3. 使用Configuration.Get("数据:DefaultConnection:ConnectionString")来访问它。

  4. 使用timesheet_db而不是DefaultConnection的示例 这是我自己的时间表应用程序中的一个示例。我的连接字符串名为timesheet_db。只需用DefaultConnection替换该字符串的所有实例,以使示例适应您的用例。

    Azure网络应用配置 enter image description here

    Azure网络应用服务控制管理器 https://myWebAppName.scm.azurewebsites.net/Env的在线服务控制管理器将显示连接字符串。

    enter image description here

    Startup.cs 在“启动”中设置配置设置,以便环境变量覆盖config.json

    public IConfiguration Configuration { get; set; }
    public Startup()
    {
     Configuration = new Configuration()
        .AddJsonFile("config.json")
        .AddEnvironmentVariables();    <----- will cascade over config.json
    }
    

    在“启动”中配置数据库。

    public void ConfigureServices(IServiceCollection services)
     {
      services
        .AddEntityFramework()
        .AddSqlServer()
        .AddDbContext<ProjectContext>(options =>
        {
            var connString =
                Configuration.Get("Data:timesheet_db:ConnectionString");
            options.UseSqlServer(connString);
        });
      }
    

    当然,该示例使用名为timesheet_db的连接字符串。对于您来说,用您自己的名为DefaultConnection的连接字符串替换它的所有实例,一切都会起作用。

答案 1 :(得分:1)

应用服务,然后选择网络应用,然后选择设置,再选择应用设置。 向下滚动到连接字符串。 确保连接名为DefaultConnection