C# Error 'Object Reference Not Set To An Instance Of An Object'
I've read other questions about this but don't see where or why my code is throwing this error. The code I have is below, if anyone can see where i'm going wrong.
private void btnSignIn_Click(object sender, EventArgs e)
{
sqlConnectionNW.ConnectionString = "Data Source=" + server + ";Initial Catalog=Northwind;Integrated Security=True";
try
{
sqlConnectionNW.Open();
String enteredDate = cmbDay.SelectedItem.ToString() + "/" + cmbMonth.SelectedItem.ToString() + "/" + cmbYear.SelectedItem.ToString();
if ((txtEmployeeID.TextLength != 0) && (enteredDate.Length != 0))
{
int ID = Convert.ToInt32(txtEmployeeID.Text);
employeesBindingSource.Filter = "EmployeeID ='" + txtEmployeeID.Text + "'";
String birthDate;
birthDate = dsEmployees.Employees.FindByEmployeeID(ID).BirthDate.ToShortDateString();
if (employeesBindingSource.Count &g开发者_Go百科t; 0) //GETS TO HERE AND THEN GOES TO CATCH EX
{
sqlConnectionNW.Close();
if (enteredDate.ToString() == birthDate.ToString())
{
frmMenu frmMainMenu = new frmMenu();
frmMainMenu.server = server;
frmMainMenu.employeeID = txtEmployeeID.Text;
MessageBox.Show("Welcome to the Northwind Ordering System");
this.Hide();
frmMainMenu.Show();
}
else
{
MessageBox.Show("The birth date you have entered is incorrect");
}
}
else
{
MessageBox.Show("The Employee ID you have entered does not exist");
}
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
sqlConnectionNW.Close();
}
Manage to solve this problem. I changed this:
if ((txtEmployeeID.TextLength != 0) && (enteredDate.Length != 0))
{
int ID = Convert.ToInt32(txtEmployeeID.Text);
employeesBindingSource.Filter = "EmployeeID ='" + txtEmployeeID.Text + "'";
String birthDate;
birthDate = dsEmployees.Employees.FindByEmployeeID(ID).BirthDate.ToShortDateString(); // FROM HERE
if (employeesBindingSource.Count != 0)
{
sqlConnectionNW.Close();
To this:
if ((txtEmployeeID.TextLength != 0) && (enteredDate.Length != 0)) {
int ID = Convert.ToInt32(txtEmployeeID.Text);
employeesBindingSource.Filter = "EmployeeID ='" + txtEmployeeID.Text + "'";
String birthDate;
if (employeesBindingSource.Count != 0)
{
birthDate = dsEmployees.Employees.FindByEmployeeID(ID).BirthDate.ToShortDateString(); //TO HERE
sqlConnectionNW.Close();
It was just a case of putting the "birthDate = ..." after the if statement.
精彩评论