Windows mobile 无法获取新的服务器锚

Windows mobile 无法获取新的服务器锚,windows-mobile,synchronization,microsoft-sync-framework,Windows Mobile,Synchronization,Microsoft Sync Framework,我得到一个错误: 无法获取新的服务器锚。确保可以建立到服务器数据库的连接,并且正确指定了DbServerSyncProvider的SelectNewAnchorCommand属性 在Windows Mobile中将SQL Server DB与Compact DB同步时,会发生以下情况: Dim syncStats As Microsoft.Synchronization.Data.SyncStatistics = syncAgent.Synchronize() 我在Visual Studio

我得到一个错误:

无法获取新的服务器锚。确保可以建立到服务器数据库的连接,并且正确指定了DbServerSyncProvider的SelectNewAnchorCommand属性

在Windows Mobile中将SQL Server DB与Compact DB同步时,会发生以下情况:

Dim syncStats As Microsoft.Synchronization.Data.SyncStatistics = syncAgent.Synchronize()

我在Visual Studio 2008中创建了一个智能设备项目。我使用设计器向导在其他计算机中的SQL Server DBpresent和当前应用程序中的Compact DBpresent之间创建同步。向导使用WCF服务库与服务器数据库交互。当我更改WCF的app.config中的连接字符串时,会发生上述错误

我首先想到的是,该设备无法连接到您的服务器数据库。如果设备本身未被授权建立与服务器的连接,则连接字符串是否使用集成安全性或是否包含SQL用户名和密码无关紧要

使用此不同的连接字符串,是否可以不使用同步直接连接到服务器

例如:

另一个需要注意的问题是:您正在连接的另一个数据库是否支持同步?这里有多个数据库,包括一个较旧的SQL 2000数据库。它不支持同步

尽量简化您的项目,缩小错误发生的范围


目前,您在使用向导、同步和WCF时有太多的未知问题。

我的问题已经解决。我没有使用sql 2008,我的复制compact DB是从sql Server 2008创建的。而且Dbs的架构不正确。
现在,sql server和compact DB之间已完成同步。

您正在连接到什么?您的设备和服务器都支持同步吗?我在Visual Studio 2008中创建了一个智能设备项目。我使用设计器向导在其他计算机中的SQL server DBpresent和当前应用程序中的Compact DBpresent之间创建同步。向导使用WCF服务库与服务器数据库进行交互。当我在WCF的app.config中更改连接字符串时,会发生上述错误。如果不更改连接字符串,该错误是否有效?如果您使用windows集成安全性连接到sql server,wcf服务在哪个帐户下运行?感谢您向我解释这些事情。我的问题已经解决了。我没有使用sql 2008,我的复制compact DB是从sql Server 2008创建的。而且Dbs的模式不正确。那太好了。将其标记为答案,以便阅读本文的其他人能够理解尝试什么。
Private Function DatabaseConnect(ByVal connection As String) As DateTime
  Dim dateTime As DateTime = New DateTime(1900, 1, 1)
  Dim obj As New Object()
  Using cmd As New SqlCommand("SELECT GETDATE();", New SqlConnection(connection))
    cmd.Connection.Open()
    obj = cmd.ExecuteScalar()
  End Using
  If (Not obj Is DBNull.Value) Then
    dateTime = DirectCast(obj, DateTime)
  End If
  Return dateTime
End Function