c# - 为什么我的 Azure 中托管的 ASP NET Web 服务没有执行任何操作?

标签 c# asp.net-mvc azure

我在 VS2019 中创建了一个 ASP NET Web 服务,该服务在本地部署时会连接到同一台计算机(托管在 Azure 门户中的虚拟机)上托管的 SQL 服务器,并在以下情况下以 XML 文件形式返回数据:输入/api/TableName url。但是,将其发布到 Azure 门户后,当我尝试通过 /api/TableName 获取任何数据时,它不再返回任何数据并给出 500 错误。 Azure 门户没有显示任何 SQL 数据库,因此我假设 SQL Server 本地托管在虚拟机上。

我需要在这里做什么?我是否必须在 Azure 中创建一个新的 SQL 数据库,并且可能使用链接服务器来访问虚拟机上的该数据库?

这是我创建 Web 服务所遵循的指南(如果有帮助的话)。

https://medium.com/better-programming/building-a-restful-api-with-asp-net-web-api-and-sql-server-ce7873d5b331

最佳答案

您在开发应用程序时使用本地 SQL Server 数据库,但是,当您将其发布到 Azure Web 服务时,其中没有安装 SQL Server。因此,您的应用程序将无法运行。

解决方案可能是:

  1. 使您的本地 SQL Server 可从公众访问,并相应地更新数据库连接字符串。

  2. 您可以创建 Azure VM,并在其上安装 SQL Server,并将其用作第一个解决方案。

  3. [建议]您可以使用 Azure SQL 。它是一个PaaS服务,您可以直接轻松地使用它。

关于c# - 为什么我的 Azure 中托管的 ASP NET Web 服务没有执行任何操作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59350828/

相关文章:

c# - 为什么将字符串路径转换为 ​​Geometry 并再次返回会抛出 FormatException?

c# - 在操作中获取空参数

c# - 什么是 ASP.Net MVC 操作结果?

sql - 执行 SQL 数据导出的更简单方法 - Azure

azure - 在 MS Azure 中检测应用程序审核代码

c# - [OptionalField] 属性有什么用?

c# - 确定字符串是否以空格结尾

c# - WH_MOUSE_LL Hook 不会为注入(inject)的事件(mouse_event、SendInput)调用

c# - 如何在不重启 AppDomain 的情况下在运行时将模块添加到 MVC4

mysql - Azure 流分析输出到 MySQL 数据库