TableAdapter.update方法,它去哪了? - c#

我用您的标准智能控件制成了一个ListBox,并将其连接到数据库。它通过查询生成器获取我已经在其中预先生成的数据,所以当我这样做时:

this.calibrate_swipesTableAdapter.Fill(this.xperdex_crandallDataSet.calibrate_swipes);

我得到一个包含数据的列表框。

然后,当我通过它向其中添加数据块时:

toadd["card_number"] = card_number;
this.xperdex_crandallDataSet.Tables["calibrate_swipes"].Rows.Add(toadd);

它也可以。效果很好。现在,当我关闭时,我会丢失所有信息。更新我的适配器和AcceptChanges,对吗?

没那么快。当我打电话

this.calibrate_swipesTableAdapter.Update(this.xperdex_crandallDataSet.calibrate_swipes);

我得到“不包含“更新”的定义”。

是什么赋予了?我看不出任何原因来进行填充的同一件事没有更新方法。

参考方案

您可能要看一下TableAdapter Overview,其中指出:

如果主查询中有足够的信息,则在生成TableAdapter时默认情况下会创建InsertCommand,UpdateCommand和DeleteCommand命令。如果TableAdapter的主查询超过一个表的SELECT语句,则设计者可能无法生成InsertCommand,UpdateCommand和DeleteCommand。如果未生成这些命令,则在执行TableAdapter.Update方法时可能会收到错误消息。

您有两种选择:

更改您的主要查询
更改UpdateCommand。

要更改UpdateCommand,请找出为TableAdapter生成的类的名称是什么。该代码应类似于以下内容:


SqlCommand yourUpdateCommand = new SqlCommand("UPDATE...", connection);
this.calibrate_swipesTableAdapter.Adapter.UpdateCommand = yourUpdateCommand;

更新:

正如评论员所说,在其他条件下,可能不会生成命令。查看评论。

使用C#和tableadapter遍历结果 - c#

目前,当我按下我的上一个按钮时,它只会将结果返回到我的文本框。我希望它遍历结果。因此,第一次单击该按钮时,它将显示第一个记录,并循环显示。protected void btnPrevious_Click1(object sender, EventArgs e) { DAL.TicketsDataSetTableAdapters.TicketDetailsTa…

从JAVA调用方法C#.NET - java

我有一个C#.NET项目中创建的dll,我想从Java程序中调用方法。我想知道是否存在实现此目标的机会,然后遇到了JNA和JNI。我应该使用哪一个?有什么建议么?我只需要在使用C#.NET编写的类中调用方法并处理Java程序的结果即可。 参考方案 这取决于您的应用程序,但是您可以将C#DLL放在服务中,例如WCF并以这种方式将功能公开给Java代码。使用ws…

从ASP.NET 1.1转换为ASP.Net 3.5后,单选按钮停止工作 - javascript

[我在下面以FYI的形式发布我们的问题和解决方案。如果您有Microsoft或代表机构对此问题的正式声明,我会将其标记为答案。否则,我下面的帖子将作为答案]。问题:我们采用了ASP.Net 1.1程序,并将其转换为ASP.Net 3.5。该页面最初正确显示,默认情况下选中一个单选按钮,并显示一个项目列表(“列表A”)。当我们单击另一个单选按钮时,它将正确显示…

内存缓存-SQLite与System.Data.DataTable - c#

我正处于用C#设计内存缓存的初期阶段(它将作为Windows服务运行)。一旦投入生产,预计平均可容纳近一百万个对象(各种类型)。某些缓存项的大小最大为10MB(或更多)。我考虑了各种数据存储解决方案,现在我决定选择DataTable或SQLite内存中实例作为缓存存储。此时,我的问题是您如何看待这么多记录的数据表的性能?您是否认为使用SQLite解决方案是一…

Spring Data Cassandra的事务管理 - java

我正在使用Spring和Cassandra作为基础数据库。曾提到过弹簧伞项目“ spring data cassandra”。与休眠不同,在这里无法找到如何管理事务。如果您中的某些人已经合并,请共享要包含的事务管理器的详细信息。 参考方案 Cassandra不支持传统(ACID)的事务。在某些特殊情况下,可以通过一些构造来实现事务原子性,例如原子批处理(请参…