希望这是一个相当简单的问题。
我正在我的应用程序中构建通用搜索表单。这将允许用户在整个应用程序中搜索各种记录。
我似乎无法弄清楚的一件事是如何允许TableAdapter的声明在运行时更改。应用程序的每个部分都会将一个变量传递给搜索表单,以指定应该加载哪个表。
在表单类中,我有以下内容:
FRIEND WITHEVENTS tbaSearchData AS database.databaseTableAdapters.TableOneTableAdapter
这对TableOne来说很棒。但是,我有大约一百张可以搜索的表格。
要加载数据我正在使用DataGridView并通过私有方法填充它。
非常感谢任何帮助。
答案 0 :(得分:1)
Tableadapter真正用于设计时设置,并且在运行时不容易更改。您可能希望使用DataAdapter(如SqlDataAdapter)来处理这些请求。这些对象具有较低的开销,并且不像tableadapter那样特定于类型,因此在运行时创建它们是一个不错的解决方案。
答案 1 :(得分:0)
让我们看看我是否理解这一点。 我想出了两个可能的解决方案
从应用程序的各个角度,您可以传递专门的DataAdapter本身而不是表名,并将一般的DataAdapter变量分配到搜索表单中。
您可以在搜索表单中创建一个通用DataAdapter,并更改用于加载数据的SQL命令。在以下代码中,da
将是DataAdapter,table
传递给搜索表单的表名
da.SelectCommand.CommandText = "Select * from " & table