2010-09-01 52 views
1

我创建了一个使用由Visual Studio生成的类型化数据集(确切地说是Express)的简单表单。TableAdapterManager不包含“表格适配器”,也没有扩展方法

我修改了默认的“填充”查询中值拉从其他几个表,然后尝试运行我的应用程序,并得到了以下错误:

TableAdapterManager does not contain "table adapter" and no extension method

在此之前我的变化,一切运行良好。即使撤消我的查询更改后,我仍然有同样的错误。

我该如何解决这个问题?

在此先感谢。

+2

给我们看一些代码。 – 2010-09-01 11:38:37

+0

我没有写任何代码,我使用的所有东西都是由VS生成的。我所做的只是拖放表格并添加一个datagridview。 错误出现在Form.Designer.cs文件中。错误的行是:“this.tableAdapterManager.SaleTableAdapter = null;” 除了修改SaleTableAdapter中的默认填充查询外,我通过右键单击DataSet设计器中的表格适配器来选择“配置”选项,没有其他更改。 – Rodney 2010-09-01 21:52:35

回答

1

从我所知的TableAdapterManager有你在DataSet.xsd中定义的每个TableAdapter的属性。然而,它们是空的,因此,在创建TAM的实例之后,您有责任用相应表适配器的实例“编写一些代码”和“填充这些属性”。

此外,你将不得不设置连接,这将覆盖您的适配器可能单独拥有的任何连接。

您可能想在使用TableAdapterManager之前彻底阅读TableAdapterManager overview

0

我最近有一个类似的问题,我详细介绍了我的情况。 问题可能来自您的新填充方法无法生成分别插入,更新,删除命令。如果TA没有这个命令,表格适配器将没有更新选项,所以表格适配器管理器将没有它的属性。 我解决了它与TA使用“配置”,然后

0

这是一个老问题,但我仍然会给一个答案:而不是编辑查询选择,添加一个新的选择查询,您可以连接表,等等然后TableAdapterManager将能够生成代码。 新的查询将添加一个新的方法来填充数据集(FillBy()),使用这种方法,而不是关闭Fill(),它仍然会使用旧的查询。 我有同样的错误,这个解决方案为我工作。

相关问题