我的TableAdapter的更新和删除命令怎么了?

Dav*_*N59 5 designer dataset tableadapter visual-studio-2008

好像我正在与一个顽抗的VS2008 DataSet设计师作战.我一直在尝试做一个简单的2表数据集解决方案,其中一个表只是存储在另一个表中的整数值的文本含义.基本数据设计101.

Table1
CharField1
CharField2
IntForeignKeyField1
etc

Table2
IntPrimaryKey1
ValueForKeyField
Run Code Online (Sandbox Code Playgroud)

这并没有真正影响我遇到的问题,我不相信,因为我不想做任何事情,只是从第二个表中读取值,所以我可以在客户端的DataGridViewComboBoxColumn中选择它们 - 我会永远不要在客户端上编辑它们.但是,我离题了.

由于它存在于Web服务中,并且我希望将一个强类型数据集传递给此Web服务的客户端,因此我决定使用DataSet Designer来构建TableAdapter和所有管道,认为它可能不那么有用,也更容易保持.

因此,我创建了漂亮的框并编辑了select语句,指示设计者为表适配器创建所有Insert,Update和Delete命令.它很高兴地告诉我,一切都按照我的要求完成了.

但是,当我尝试使用Update语句时,我收到一条错误消息,指出没有有效的Update语句!在对网络上有类似问题的人进行一些徒劳无功的搜索之后,我挖掘了数据集的XML.果然,没有Update语句,也没有Delete语句.

我尝试从项目中完全删除并重新创建DataSet,结果相同.未创建更新或删除语句,即使报告已完成.

我最后通过检查来自另一个项目的另一个设计数据集手动构建Update语句XML,因此Web服务现在正在运行.但是,我没有任何信心,我的更改将持续通过设计师发起的编辑,我很难过为什么它不起作用.有任何想法吗?

感谢任何反馈,戴夫

小智 13

可能是没有为表定义唯一的主键吗?