c# - 如何更改已部署的Azure应用程序中的连接字符串

标签 c# database azure azure-web-app-service

我使用 MVC 模式和 Entity Framework 6 在 Visual Studio 下开发了一个网站应用程序。 该网络应用程序已链接到本地​​数据库。

我已在我的 azure acc 上发布了该应用程序。我还在 Azure 上导出了数据库,如下 this tutorial 。 但是,我找不到将在线应用程序链接到迁移的数据库的方法。

应用程序上没有显示任何数据,当我尝试检查连接字符串时,我得到 an error ,连接字符串尚未更新,因此应用程序仍在尝试定位我的本地数据库。

我想知道是否有人知道如何解决这个问题。

编辑:问题可能出在其他地方,我显然有 two connexions ,一个用于我的迁移数据库,一个用于我的本地数据库。也许我需要删除针对本地数据库的连接字符串,但我不知道该怎么做 另外,由于迁移的数据库是我之前使用的本地数据库的副本,我是否需要更改模型、 View 或 Controller 中的任何内容?

编辑2:感谢下面的评论,我能够覆盖错误的连接字符串。然而,我的数据仍然没有显示在我的应用程序上,我还没有发现可能发生了什么。 我怀疑我的模型仍然与本地数据库使用的模型相同,因为它具有相同的名称。有谁知道如何将模型更改为在线数据库的当前模型?

谢谢。

最佳答案

因为您使用 Entity Framework 创建了应用程序,所以 web.config 文件中应该定义一个指向本地数据库的连接字符串。

  <connectionStrings>
    <add name="MyContext" connectionString="..."  
         providerName="System.Data.SqlClient" />
  </connectionStrings>

如果您已将网站发布为 Web 应用程序(应用程序服务),则可以在 Web 应用程序页面上的“应用程序设置” Pane 下更改数据库的连接字符串。 您可以通过使用 web.config 文件中的连接字符串名称创建连接字符串设置条目来覆盖连接字符串。 (对于上面的代码片段 - MyContext)

关于c# - 如何更改已部署的Azure应用程序中的连接字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50457488/

相关文章:

c# - Stream 意外结束,内容可能已被另一个组件读取。 Microsoft.AspNetCore.WebUtilities.MultipartReaderStream

php - Codeigniter 中的多个连接

android - RushORM 的创建和更新时间

azure - 从 DC 中托管的服务器迁移到 Azure

c# - asp.net c#代码错误(mysql数据库连接)

c# - 如何在不同的计算机上启动/停止应用程序?

c# - "Derived"使用 Hot Chocolate 和 EFCore 的 GraphQL 字段解析器

sql - ORA-00904: 标识符无效

Linux VM 串行控制台每 3 分钟输出 "INFO ExtHandler Updated NIC state"

azure - 如何允许应用程序注册仅由特定用户或组访问?