Azure Web App 未使用连接字符串通过 VPN 连接到现场 SQL 服务器

Azure Web App is not connecting to On-Site SQL Server via VPN using connection string

我有一个 Azure Web 应用程序 运行ning,该站点需要连接到现场 SQL 数据库。 我与 SQL 服务器的现场网络已通过 VPN 添加到 Azures 虚拟网络。 当我转到 Azure 并在我的 Web 应用程序上使用控制台时(我已经查看了如何在此处的另一个线程上执行此操作)我可以 tcpping IP 甚至 运行 sql 命令和得到结果。

但是...我将这些与我在控制台中使用的完全相同的连接字符串详细信息放入连接字符串中,Web 应用程序将无法连接。

我正在使用

<add name="ConSQL" connectionString="Server=tcp:192.168.xxx.xxx:1433;Initial Catalog=LoggerData;User ID=xxx;Password=xxx;Trusted_Connection=False;Encrypt=True;"/>

有什么我想念的吗?我知道我的 Azure 服务 Web 应用程序可以通过从控制台 ping 和查询它来查看和访问现场 sql 服务器,但是一旦我启动 Web 应用程序本身并尝试连接到数据库,就像在 C# 中一样它不会连接。

尝试转到“配置”>“连接字符串”并在 Web 应用下添加连接字符串。确保它的名称与您的代码中引用的名称完全相同。此外,在您的代码中,确保您从配置文件中获取连接字符串。

services.AddDbContext<YourDBContext>(options =>
        {
            options.UseSqlServer(Configuration.GetConnectionString("ConSQL"));
        });

步骤 1. 将连接字符串移动到 Azure。 步骤 2. 删除 Trusted_Connection=False;Encrypt=True;来自连接字符串。

修复了这个问题。谢谢 Salli 的帮助。