Столбец "aid" не принадлежит таблице ADMIN_SELECT.
На самом деле я работаю над своим проектом (библиотечная система). На моей домашней странице есть два логина.. один для студента, а другой для библиотекаря. Вход студента работает нормально, но вход библиотекаря-нет. У меня есть колонка помощи в моей таблице. но все же я получаю ошибку "столбец 'aid' не принадлежит таблице ADMIN_SELECT". Я не мог понять почему. Пожалуйста, предложите мне какое-нибудь решение.
Ошибка сервера в приложении'/'.
Столбец "aid" не принадлежит таблице ADMIN_SELECT.
Описание: необработанное исключение возникло во время выполнения текущего веб-запроса. Пожалуйста, просмотрите трассировку стека для получения дополнительной информации об ошибке и о том, где она возникла в коде.
Сведения Об Исключении: Система.ArgumentException: столбец "aid" не принадлежит таблице ADMIN_SELECT.
Ошибка Источника:
Line 23: if (ADT.Rows.Count > 0) Line 24: { Line 25: Session["aid"] = ADT.Rows[0]["aid"].ToString(); Line 26: Session["email"] = txtuname.Text; Line 27: Session["name"] = ADT.Rows[0]["name"].ToString();
трассировка стека:
[ArgumentException: Column 'aid' does not belong to table ADMIN_SELECT.] System.Data.DataRow.GetDataColumn(String columnName) +5770283 System.Data.DataRow.get_Item(String columnName) +13 _Default.Button1_Click(Object sender, EventArgs e) in c:\Users\nithy\Desktop\LibrarySystem\Default.aspx.cs:25 System.Web.UI.WebControls.Button.OnClick(EventArgs e) +9815206 System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +204 System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +12 System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +15 System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +35 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1639
Что я уже пробовал:
Это код, который я пытаюсь использовать....
if (rdolibrary.Checked == true) { ADT = AAdapter.Select_for_LOGIN(txtuname.Text, txtupass.Text); if (ADT.Rows.Count > 0) { Session["aid"] = ADT.Rows[0]["aid"].ToString(); Session["email"] = txtuname.Text; Session["name"] = ADT.Rows[0]["name"].ToString(); Response.Redirect("Home.aspx"); } else { lbl.Text = "Invalid Credential"; }
Richard Deeming
Я сильно подозреваю, что вы храните пароли в обычном тексте. Хотя это, вероятно, не является большой проблемой для школьного проекта, любой реальный код должен принять более безопасный подход.
Безопасная Аутентификация Паролем Объясняется Просто[^]
Соленое хэширование паролей - делаем это правильно[^]