C# - 3 层架构。错误说方法名称没有重载需要 0 个参数
C# - 3 Tier Architecture. Error says No overload for method name takes 0 arguments
我在我的 C# Window 表单中使用 3 层架构。我想要做的是,如果数据存在则隐藏按钮。这是我的代码。
Class 文件
public bool checkIfExists(Variables variables) { // BelPar
SqlCommand check = new SqlCommand();
check.Connection = dbcon.getcon();
check.CommandType = CommandType.Text;
check.CommandText = "SELECT * FROM tbl";
SqlDataReader drCheck = check.ExecuteReader();
if(drCheck.HasRows == true)
{
drCheck.Read();
if (... && .. ||) // conditions where variables are being fetch
{
return false;
}
}
drCheck.Close();
return true;
}
Window表格
btn_save.Visible = !balpayrolldetails.checkIfExists(); // This is where I get the "No overload for method 'checkIfExists' takes 0 arguments.
有什么帮助吗?请在下面留下或回答。谢谢
要调用一个方法,您需要通过它的确切名称来调用它,在本例中是:
checkIfExists(Variables variables);
这告诉我们,要使用这个方法,我们需要传入一个Variables
类型的对象,以便在方法执行时使用。
必须提供方法签名中概述的任何类型才能成功调用方法。
您需要从
更新您的通话
btn_save.Visible = !balpayrolldetails.checkIfExists();
到
btn_save.Visible = !balpayrolldetails.checkIfExists(someVariablesOfTheExpectedType);
具有方法签名:
public bool checkIfExists(Variables variables)
应该通过将 Variables
类型的对象传递给方法来调用它:
btn_save.Visible = !balpayrolldetails.checkIfExists(anInstanceOfVariables);
但是如果您可以接受调用方法 parameter-less 并且您的方法的编写方式可以容忍 variables
和 null
值,您可以更改签名对此:
public bool checkIfExists(Variables variables=null)
然后你可以这样称呼它:
btn_save.Visible = !balpayrolldetails.checkIfExists();
我在我的 C# Window 表单中使用 3 层架构。我想要做的是,如果数据存在则隐藏按钮。这是我的代码。
Class 文件
public bool checkIfExists(Variables variables) { // BelPar
SqlCommand check = new SqlCommand();
check.Connection = dbcon.getcon();
check.CommandType = CommandType.Text;
check.CommandText = "SELECT * FROM tbl";
SqlDataReader drCheck = check.ExecuteReader();
if(drCheck.HasRows == true)
{
drCheck.Read();
if (... && .. ||) // conditions where variables are being fetch
{
return false;
}
}
drCheck.Close();
return true;
}
Window表格
btn_save.Visible = !balpayrolldetails.checkIfExists(); // This is where I get the "No overload for method 'checkIfExists' takes 0 arguments.
有什么帮助吗?请在下面留下或回答。谢谢
要调用一个方法,您需要通过它的确切名称来调用它,在本例中是:
checkIfExists(Variables variables);
这告诉我们,要使用这个方法,我们需要传入一个Variables
类型的对象,以便在方法执行时使用。
必须提供方法签名中概述的任何类型才能成功调用方法。
您需要从
更新您的通话btn_save.Visible = !balpayrolldetails.checkIfExists();
到
btn_save.Visible = !balpayrolldetails.checkIfExists(someVariablesOfTheExpectedType);
具有方法签名:
public bool checkIfExists(Variables variables)
应该通过将 Variables
类型的对象传递给方法来调用它:
btn_save.Visible = !balpayrolldetails.checkIfExists(anInstanceOfVariables);
但是如果您可以接受调用方法 parameter-less 并且您的方法的编写方式可以容忍 variables
和 null
值,您可以更改签名对此:
public bool checkIfExists(Variables variables=null)
然后你可以这样称呼它:
btn_save.Visible = !balpayrolldetails.checkIfExists();