0

一些背景知识:我正在尝试使用 Sync Services for ADO.NET 为我的应用程序创建服务器/客户端同步方案,特别是 LocalCache 自定义工具,它为我设置了整个事情。我的服务器数据库有 5 个表,所有这些表都正在同步到客户端应用程序,客户端应用程序现在有一个与服务器数据库具有相同架构的 SQL Server Compact DB。我有一个包含一些自定义查询的数据集,用于将我的应用程序与本地数据库连接起来。到目前为止,一切都很好。但是,在我的应用程序中,当我尝试使用表单上的表适配器(默认的“填充”方法)填充我的一个表时,它给了我以下异常:

不存在从 DbType 对象到已知 SqlDbType 的映射。

但是,如果我继续并再次填充,它可以正常工作。

    Try
        Me.WTSUsersTableAdapter.Fill(Me.WTSMainDataSet.WTSUsers)
    Catch ex As Exception
        MessageBox.Show(ex.Message)
    End Try

如果我两次执行上述代码,一个接一个,第一个失败,第二个有效。

另一点要提的是,这只发生在这个数据表上,数据库中的所有其他 4 个表都按预期工作。

有谁知道这可能是什么原因?

非常感谢

编辑:我删除了我的数据集并重新创建它但没有成功。有人对我有想法吗?

4

1 回答 1

1

我找到了我的问题的答案。我为表适配器输入的自定义“更新”查询存在问题。出于某种原因,这阻止了表格适配器执行简单的“填充”,但仅在第一次尝试时。在第二次尝试时,它似乎并不关心我的更新错误......

去搞清楚。

我发现问题的方法是从适配器中删除每个自定义查询,并一次添加一个以查看导致错误的原因。

于 2011-06-26T09:34:54.770 回答