0

我们有基于 Windows Mobile 6.5.3 的解决方案,并使用 System.Data.SqlClient 连接到我们的数据库。一切正常,直到...

将 SQL Server 从 2005 Workgroup Edition 升级到 2012 标准后,我们​​遇到了连接问题。

真实设备可以连接到 SQL 服务器 - 应用程序可以工作,但我们无法在模拟器上调试项目。这很奇怪,为什么真实设备可以在该连接字符串上工作。当我们使用真实设备进行调试时,我们可以在模拟器上连接到数据库,但我们不能

W 花了 2 天时间寻找没有结果的解决方案。

我的 SQL 连接看起来像

服务器=xx.xx.xx.xx\InstanceName,1433;数据库=dbName;用户ID=用户名;密码=密码;连接超时=30

当我们调用 SqlConnection.Open() 时发生异常。

异常查看详情

        using (var sqlConnection = new SqlConnection(DatabaseConstans.ConnectionString))
        {
            sqlConnection.Open();

我们做了:

  • 将默认 SQL 端口号更改为 1433
  • 摇篮模拟器 - 互联网浏览器测试 - 通过
  • SQL 浏览器正在运行
  • 我们可以从该连接字符串上的 WinForm 应用程序进行连接

其他设置:

摇篮

连接管理器

连接设置

4

2 回答 2

0

从连接字符串中删除您的 SQL 实例名称(例如 SQLEXPRESS)。

在 TCP/IP 协议下的 SQL 配置管理器中,清除所有 TCP 动态端口(留空)。在“IPALL”下将 TCP 端口设置为 1433

所以你的连接字符串应该是这样的:Data Source=192.168.1.53,1433;Initial Catalog=dbname;User ID=xxx;Password=xxxxx;"

经过整整两天的尝试,这对我有用。

于 2017-10-17T14:45:37.980 回答
0

您需要安装SQL Server Management Studio 2008 R2(提供免费版本)才能打开SQL CE( .SDF) 文件。在对象资源管理器中的连接上SQL Server Compact,除了数据库引擎之外,它还将提供...的选项。

于 2016-03-18T17:16:37.770 回答