为什么我的DataAdapter第二次“填充”? SQL Server Compact

时间:2011-06-23 08:35:46

标签: vb.net sql-server-ce dataadapter

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

从DbType对象到已知的SqlDbType没有映射。

但是,如果我继续并再次填写,那么IT工作没有问题。

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

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

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

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

非常感谢

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

1 个答案:

答案 0 :(得分:1)

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

Go Figure。

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