0

我有一个 UWP 应用程序在我的本地机器上成功运行,连接到同一台机器上的测试数据库。但是,现在我必须将应用程序部署到我工作的 Windows Server。

我无法让应用程序连接到与 Windows Server 在同一台计算机上运行的 SQL Server 数据库。错误消息是“与 SQL Server 建立连接时发生与网络相关或特定于实例的错误。找不到服务器或无法访问该服务器。验证实例名称是否正确以及 SQL Server 是否配置为允许远程连接。”

数据库上的所有设置似乎都是正确的。为了测试这一点,我创建了一个简单的 .NET Core 应用程序来查看它是否可以连接。它可以。这是代码:

 using (SqlConnection connection = new SqlConnection("Data Source=ServerName,Portnumber;Initial Catalog=DatabaseName;Integrated Security=True;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False")) ...

但是,使用相同连接字符串的 UWP 应用无法连接。这是相关的代码。此代码位于使用 EF Core 2.2.6 的 .Net Standard 2.0 项目中。(我不能使用 EF Core 3.0,因为它与 .Net Standard 2.0 不兼容。我必须使用 .Net Standard 2.0,因为 2.1 与 UWP 不兼容。)

protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
    {
        optionsBuilder.UseSqlServer("Data Source=ServerName,Portnumber;Initial Catalog=DatabaseName;Integrated Security=True;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False"); ...

我也可以使用 SSMS 成功连接到服务器。

在 UWP 应用的功能复选框中,我检查了企业身份验证和专用网络。

总之,我可以通过 SSMS 和一个简单的 .NET Core 应用程序进行连接,但我的 UWP 应用程序无法连接。谁能指出我正确的方向?这可能是 EFCore 的问题吗?

4

0 回答 0