2016-11-12 6 views
0
{ 
    public DataTable EmpLoginbyId() 
    { 
     SqlConnection con = new SqlConnection("server=(local);database=schoolsystem;integrated security=true"); 
     SqlCommand cmd = new SqlCommand(); 
     DataTable dt = new DataTable(); 
     SqlDataAdapter adp = new SqlDataAdapter("EmpLoginbyId", con); 
     cmd.CommandType = CommandType.StoredProcedure; 
     adp.Fill(dt); 
     return dt; 
    } 
    public void EmpLogin(string Email, String Password) 
    { 

     SqlConnection con = new SqlConnection("server=(local);database=schoolsystem;integrated security=true"); 
     SqlCommand cmd = new SqlCommand("EmpLogin", con); 
     cmd.CommandType = CommandType.StoredProcedure; 
     cmd.Parameters.AddWithValue("@Email", Email); 
     cmd.Parameters.AddWithValue("@passward", Password); 



     con.Open(); 
     cmd.ExecuteNonQuery(); 
     con.Close(); 
    } 

защищен недействительным Button1_Click (объект отправителя, EventArgs е) {ошибка при выполнении страницы входа для приложения ASP.NET и SQL сервера

 try 
     { 
      Session["UID"] = Lgn.EmpLogin(TxtUN.Text, TxtPW.Text); 
      int? UID = Convert.ToInt32(Session["UID"].ToString()); 
      DataTable dt = new DataTable(); 
      dt = Lgn.EmpLoginbyId(Convert.ToInt32(UID)); 
      string Username = dt.Rows[0]["UserName"].ToString(); 
      //string Username = dt.Rows[0]["UserName"].ToString(); 
      Session["ETID"] = Convert.ToInt32(dt.Rows[0]["UserTypeID"].ToString()); 
      if (Username == null) 
      { 
       Session["UserName"] = Username.ToString(); 

      } 
      if (UID.HasValue) 
      { 
       Response.Redirect("Admin.aspx"); 
      } 


     } 
     catch { } 
    } 

и это мой класс код дает мне эту ошибку ошибка 1 не удается неявно преобразовать тип «пустоты» в «объект»
Error 2 нет перегрузки метода «EmpLoginbyId» принимает аргументы 1

ответ

0

Первая ошибка есть, потому что EmpLogin является Ретур ning void, и вы пытаетесь присвоить его некоторому объекту, который недействителен. Поэтому либо возвращайте какое-либо значение из функции, либо удаляйте назначение в объект сеанса.

Вторая ошибка действительна, так как EmpLoginById не имеет параметров в своей подписи. Поэтому либо модифицируйте подпись, либо вызовите функцию, удалив UID.

Смежные вопросы