提问人:Zay 提问时间:2/25/2023 最后编辑:Zay 更新时间:2/26/2023 访问量:79
如何将数据表传递到button_click函数中?
How can I pass a datatable into a button_click function?
问:
我正在使用对数据库的查询来填充数据表。我将所有查询存储在一个静态类中,然后在另一个类中对这些表进行排序/过滤。我在将生成的数据表拉入另一个类时遇到了问题,我正在该类中执行涉及数据的所有排序、任何计算等。如何在 C# 中将生成的表拉取到 button_click 方法中?
我的一个疑问:
string HeaderString =
@" SELECT
ID,
model,
series,
short_name,
published,
VALID_DTTM
FROM
HEAD_TABLE;
DataTable Headerdtbl = null;
if(IsConnected()) {
try {
string HeaderQuery = string.Format(HeaderString, Model);
OracleDataAdapter HeaderdataAdapter = new OracleDataAdapter(HeaderQuery, A.ServerConnection.oracleConnection);
Headerdtbl = new DataTable("HEAD");
HeaderdataAdapter.Fill(Headerdtbl);
}
catch(Exception ex) {
using ExceptionDialog exDialog = new(ex);
exDialog.ShowDialog();
Headerdtbl = null;
}
}
return Headerdtbl;
我收到错误的代码:
(这是在不同的类中。
private void PopulateButton_Click(object sender, EventArgs e)
{
// Sort data
DataView HeaderView = new(Headerdtbl);
HeaderView.Sort = "PUBLISHED ASC";
HeaderView = new DataView(Headerdtbl);
HeaderView.Sort = "SHORT_NAME ASC";
HeaderView = new DataView(Headerdtbl);
HeaderView.Sort = "MODEL ASC";
Headerdtbl = HeaderView.ToTable();
错误我得到:CS0103 名称“标识符”在当前上下文中不存在。
我知道最明显的解决方案是将查询与按钮单击代码一起放入,但不幸的是,我无法将查询移出它的类,因为这是从数据库中查询的指定位置。我需要一种方法将已建立的表格拉入我的按钮单击方法。有什么好方法可以做到这一点吗?
答:
0赞
Imamul Karim Tonmoy
2/25/2023
#1
这是 Microsoft 的指南
https://learn.microsoft.com/en-us/dotnet/api/system.data.dataview.sort?view=net-7.0
您不需要每次都执行此行
Headerdtbl = HeaderView.ToTable();
相反,您可以在方法的末尾使用它
gridview1.DataSource= HeaderView.ToTable();
评论
0赞
Zay
2/25/2023
谢谢,这简化了代码块!关于如何将数据表拉入button_click的任何输入?
评论
"CS0103 The name 'identifier' does not exist in the current context."
'identifier'
'identifier'