首页 > 解决方案 > 如何解决“无法确定服务器名称。它必须作为服务器 dns 名称 (servername.database.windows.net) 的第一段出现”

问题描述

我在 Visual Studio 2017 .NET Framework 4.7.1 中有一个带有身份的 Web 应用程序,它连接到 azure sql server 数据库。提交登录表单后出现错误。异常消息是:“无法确定服务器名称。它必须作为服务器的 dns 名称(servername.database.windows.net)的第一段出现。有些库不发送服务器名称,在这种情况下服务器名称必须作为用户名的一部分 (username@servername)。此外,如果使用两种格式,则服务器名称必须匹配。”

该错误仅出现在 Web 服务器(azure app 服务)中。当我在本地(本地主机)运行它时,它工作正常。

我做了错误消息提示的操作,但是没有用。我对此进行了搜索,但没有找到任何建议或解决方案。

如果我删除登录内容,应用程序能够连接并正常工作,问题似乎是我用来连接身份表的连接字符串。

我已经在 web.config 中尝试过这个连接字符串,但它们都没有奏效:

1.添加name="DefaultConnection" connectionString="Server=tcp:myServer.database.windows.net,1433;Initial Catalog=myDatabase;Persist Security Info=False;User ID=myUser@myServer;Password=myPassword;MultipleActiveResultSets=False ;Encrypt=True;TrustServerCertificate=False" providerName="System.Data.SqlClient"

2. 添加 name="DefaultConnection" connectionString="Data Source=myServer.database.windows.net;Initial Catalog=myDatabase;Integrated Security=False;User Id=myUser;Password=myPassword;MultipleActiveResultSets=True" providerName="System.数据.SqlClient"

标签: sql-serverazure

解决方案


首先,您是否设置了Allow access to Azrue ServiceON?

请在门户上检查您的 Azrue SQL 数据库防火墙设置:

在此处输入图像描述

二、获取正确的连接字符串: 在此处输入图像描述

其他,请参阅:Microsoft Azure SQL 数据库的连接问题疑难解答在此处输入图像描述

希望这能有所帮助。


推荐阅读