C# 方法'没有重载;加载表格1和x27;采取';0';论据
方法C# 方法'没有重载;加载表格1和x27;采取';0';论据,c#,C#,方法load\u table\u 1(DataTable dt)似乎不需要或使用参数DataTable dt。将其从签名中删除。您需要将一个DataTable传递给方法load\u table\u 1 您已将函数定义为: namespace Gtec_Solution{ public partial class Main : Form { string myconnection = "datasource=localhost;port=3306;username = ro
load\u table\u 1(DataTable dt)
似乎不需要或使用参数DataTable dt
。将其从签名中删除。您需要将一个DataTable
传递给方法load\u table\u 1
您已将函数定义为:
namespace Gtec_Solution{
public partial class Main : Form {
string myconnection = "datasource=localhost;port=3306;username = root;password = 12345V";
public Main(string userName){
InitializeComponent();
load_table_1();
}
public void load_table_1(DataTable dt){
DataTable d;
Load_Table_Class ld = new Load_Table_Class();
string Query_1 = "SELECT * FROM gtec_computer.employee";
d = ld.loading_table(Query_1);
dataGridView3.DataSource = d;
}
}
}
namespace Gtec_Solution{
public class Load_Table_Class{
public DataTable loading_table(string Query){
string myconnection = "datasource=localhost;port=3306;username = root;password = 12345V";
MySqlConnection con = new MySqlConnection(myconnection);
MySqlCommand cmd = new MySqlCommand(Query, con);
con.Open();
MySqlDataAdapter mda = new MySqlDataAdapter();
mda.SelectCommand = cmd;
DataTable dt = new DataTable();
mda.Fill(dt);
BindingSource bs = new BindingSource();
bs.DataSource = dt;
mda.Update(dt);
return dt;
}
}
}
因此,您需要执行以下操作:
public void load_table_1(DataTable dt)
{
DataTable d;
Load_Table_Class ld = new Load_Table_Class();
string Query_1 = "SELECT * FROM gtec_computer.employee";
d = ld.loading_table(Query_1);
dataGridView3.DataSource = d;
}
或者从方法中删除DataTable
参数。例如:
DataTable dt = new DataTable(); // Or populate it from your service
load_table_1(dt); // pass the dt object as an argument to load_table_1
嗯,错误消息说此调用:
public void load_table_1()
{
DataTable d;
Load_Table_Class ld = new Load_Table_Class();
string Query_1 = "SELECT * FROM gtec_computer.employee";
d = ld.loading_table(Query_1);
dataGridView3.DataSource = d;
}
无效,因为此方法没有不带参数的重载。但是,您为load\u table_1
声明的参数dt
无论如何都不会使用,因此您可以安全地将其删除:
load_table_1();
在方法
Main
中:
public void load_table_1()
{
DataTable d;
Load_Table_Class ld = new Load_Table_Class();
string Query_1 = "SELECT * FROM gtec_computer.employee";
d = ld.loading_table(Query_1);
dataGridView3.DataSource = d;
}
但是在类的其他地方Main
:
public void load_table_1()
{
DataTable d;
Load_Table_Class ld = new Load_Table_Class();
string Query_1 = "SELECT * FROM gtec_computer.employee";
d = ld.loading_table(Query_1);
dataGridView3.DataSource = d;
}
公共空荷载表1(数据表dt)
您需要将
DataTable
的实例传递到load\u table\u 1
这里您调用了一个没有参数的方法:
load_table_1();
但是,您正在调用的方法需要一个参数:
public Main(string userName)
{
InitializeComponent();
load_table_1(); //THIS LINE
}
第二个方法不使用param,因此只需删除它即可读取:
public void load_table_1(DataTable dt) // IN HERE
{
DataTable d;
Load_Table_Class ld = new Load_Table_Class();
string Query_1 = "SELECT * FROM gtec_computer.employee";
d = ld.loading_table(Query_1);
dataGridView3.DataSource = d;
}
很好的代码,您还有问题吗?错误消息在我看来很清楚。当您定义了一个无参数的方法,使其只需要一个参数时,您似乎正在调用该方法。谢谢..我尝试了,它工作正常。。。。。