因此,在我收到studentHelperClass.Form1.cmbBox is inaccessible due to its protection level
的错误后,当我通过错误标签启动prorgam Error reading the database, method or operation is not implemented
时出现此错误。
这是我的代码:
public partial class Form1 : Form
{
MySqlConnection conn; // connection object;
string connstring = "server=localhost;user Id=root;database=collegesystem;Convert Zero Datetime=True ";
public Form1()
{
InitializeComponent();
connection();
selectStudent();
}
private void selectStudent()
{
try
{
studentHelperClass.studentHC.insertMethod();
}
catch (Exception err)
{
lblInfo.Text = " Error reading the database.";
lblInfo.Text += err.Message;
}
}
这是表单的代码,以下是带有方法的类
class studentHC : Form1
{
public studentHC()
{
InsertMethod();
}
private void InsertMethod()
{
MySqlConnection conn; // connection object;
string connstring = "server=localhost;user Id=root;database=collegesystem;Convert Zero Datetime=True ";
conn = new MySqlConnection(connstring);
conn.Open();
using (var command = new MySqlCommand("SELECT * FROM person", conn))
{
using (var myReader = command.ExecuteReader())
{
cmbBox.Items.Add(myReader["personID"]);
}
}
}
internal static void insertMethod()
{
throw new NotImplementedException();
}
}
非常感谢任何输入
编辑:
好的,所以我摆脱了
internal static void insertMethod()
{
throw new NotImplementedException();
}
我改变了
public studentHC()
{
InsertMethod();
}
private void InsertMethod()
到
public studentHC()
{
insertMethod();
}
private void insertMethod()
现在它说studentHelperClass.studentHC.insertMethod()' is inaccessible due to its protection level
答案 0 :(得分:2)
您的insertMethod
会抛出此异常。只要查看它的代码,就会抛出一个NotImplementedException
...
如何解决这个问题,我不能告诉你,因为我真的不确定你的班级结构......
一种可能性就是将代码从InsertMethod
移动到insertMethod
答案 1 :(得分:1)
用这个替换你的studentHC课程
class studentHC : Form1
{
public studentHC()
{
InsertMethod();
}
public static void InsertMethod()
{
MySqlConnection conn; // connection object;
string connstring = "server=localhost;user Id=root;database=collegesystem;Convert Zero Datetime=True ";
conn = new MySqlConnection(connstring);
conn.Open();
using (var command = new MySqlCommand("SELECT * FROM person", conn))
{
using (var myReader = command.ExecuteReader())
{
cmbBox.Items.Add(myReader["personID"]);
}
}
}
}
然后替换
studentHelperClass.studentHC.insertMethod();
使用
studentHelperClass.studentHC.InsertMethod();
答案 2 :(得分:0)
在Form1的构造函数中,调用selectStudent调用insertMethod。但是这种方法还没有实现。你必须在调用之前实现它。还有另一种方法具有相同的名称,但大写的第一个字母。我认为你把你的代码放错了地方。
将(大写)InsertMethod中的所有代码放入(小写)insertMethod中。这应该可以解决当前的问题。