【发布时间】:2020-04-08 13:47:11
【问题描述】:
我在 VS2019 中创建了一个 ASP NET Web 服务,当它在本地部署时,它会连接到托管在同一台机器上的 SQL 服务器(这是托管在 Azure 门户中的虚拟机),并在/api/TableName 网址已输入。但是,在将其发布到 Azure 门户后,当我尝试通过 /api/TableName 获取任何数据时,它不再返回任何数据并给出 500 错误。 Azure 门户没有显示任何 SQL 数据库,因此我假设 SQL Server 本地托管在虚拟机上。
我需要在这里做什么?我是否必须在 Azure 中创建一个新的 SQL 数据库,并且可能使用链接服务器来访问虚拟机上的这个数据库?
这是我创建 Web 服务所遵循的指南,如果有帮助的话。
【问题讨论】:
-
什么是 500 错误?
-
您的连接字符串是否与命名实例或只是本地主机有连接?
-
@AmitJoshi 在我重新部署到 Azure 后,现在加载的网页是一个 XML 文件,上面写着
<Error> <Message>An error has occurred.</Message> </Error>@Jawad 连接字符串只是数据库名称,而不是 URL。我无法从在虚拟机外部运行的 SSMS 连接到数据库,如果这就是您要问的吗? -
@Nick 您需要在您的 Azure 门户上创建一个新的
SQL实例,这将使您能够从外部源连接(显然您需要设置防火墙设置)。目前,您正在做的是您有一个本地SQL服务器设置。如果无法在 VM 外部连接到 SSMS,则需要在 Azure 门户中设置 SQL 服务器。 -
如果您只是在出现详细错误之后,我建议您从菜单工具 > 诊断转储导航到 azure 门户 > 高级工具 (kudu) > 中的应用服务。这将包含通常包含错误的 eventlog.xml。可能还有一条通过“诊断和解决问题”功能的途径。
标签: c# asp.net-mvc azure