Как сохранить результаты вошедшего в систему пользователя после успешного перенаправления со страницы входа или страницы регистрации? У меня есть кнопка в родительской форме Site.Master, которая загружается с любой другой веб-формой. Я хочу получить идентификатор пользователя, вошедшего в систему, из моей базы данных SQL и заполнить текстовое поле в форме для резервирования.
Мой проект в ASP.NET о бронировании номеров. У меня есть кнопка входа в мастер-форму, которая состоит из панели навигации с 8 кнопками меню, каждая из которых перенаправляет на другую веб-страницу. Данные в форме входа проверяются на моем SQL-сервере, и при успешном входе пользователь перенаправляется на страницу бронирования. Моя идея состояла в том, чтобы объявить 2 глобальные переменные, такие как bool, проверяя, вошел ли пользователь в систему при каждом перенаправлении, и пустую строку, которая получает значение идентификатора пользователя из SQL, если bool LoggedIn имеет значение true. Но мне не удалось инициализировать глобальные переменные и вызвать их в дочерней форме (форма бронирования), и, честно говоря, я не уверен, правильно ли я подошел для достижения этой цели.
Мой код в Login_in.aspx.cs для перенаправления входа следующий:
protected void Button1_Click(object sender, EventArgs e)
{
String source = @"Data Source=DESKTOP;Initial Catalog=projectX;Integrated Security=true;";
SqlConnection con = new SqlConnection(source);
{
try
{
string uid = TextBox1.Text;
string pass = TextBox2.Text;
con.Open();
string query = "select * from Users where Username='" + uid + "' and Password='" + pass + "'";
SqlCommand cmd = new SqlCommand(query, con);
SqlDataReader sdr = cmd.ExecuteReader();
if (sdr.Read())
{
Response.Redirect("~/Booking.aspx");
}
else
{
Label10.Text = "Wrong pass or username!";
}
con.Close();
Label10.Visible = true;
}
catch (Exception ex)
{
Response.Write(ex.Message);
}
}
Я не уверен, должен ли я объявлять глобальные переменные для bool LoggedIn и строки UserID в форме входа или в основной форме, но я хочу изменить их значения в Response.Redirect ("~ / Booking.aspx" ). Если они объявлены в файле Site.Master.cs, как я могу изменить их значения в форме входа в систему и вызвать их (и их значения) в форме бронирования. Я пытался объявить их как
public static bool LoggedIn = false;
публичная статическая строка userID;
но не знал, как инициализировать свойства get & set между формами.
В моей форме бронирования у меня есть текстовое поле, которое я хочу заполнить именем пользователя вошедшего в систему пользователя по идентификатору пользователя (из sql).
Как установить свойства в форме, в которой объявлены переменные, и в формах, где они называются?