Ich habe ein Problem mit einer Variablen.Variable in anderen Funktionen hat immer den Wert Null
protected void godziny_Click(object sender, EventArgs e)
{
var id_filmu = Request["id"];
var data = Request["data"];
var godzina = TimeSpan.Parse(hidden2.Value);
var query = from h in bazaDC.seanses
where h.godzina == godzina && h.id_filmu == int.Parse(id_filmu) && h.data == DateTime.Parse(data)
select h;
foreach (var a in query)
{
Session["id_seansu"] = a.id_seansu;
}
}
id_seansu wird außerhalb der Funktion deklariert, nur in Teilklasse. Ich muss diese Variable in einer anderen Funktion erhalten:
protected void rezerwujButton_Click(object sender, EventArgs e)
{
DateTime dzisiejszaData = DateTime.Today;
TimeSpan godzinaRezerwacji = DateTime.Now.TimeOfDay;
DateTime dataZarezerwowania;
TimeSpan czasZarezerwowania;
var query = from wszystkieRezerwacje in bazaDC.rezerwacjes
select wszystkieRezerwacje;
foreach(var i in query)
{
if(i.data_rezerwacji.HasValue && i.czas_rezerwacji.HasValue)
{
dataZarezerwowania = i.data_rezerwacji.Value;
czasZarezerwowania = i.czas_rezerwacji.Value;
}
}
rezerwacje nowaRezerwacja = new rezerwacje();
if (Session["id_seansu"] != null)
{
Response.Write(Session["id_seansu"]);
};
/*nowaRezerwacja.imie_klienta = imieTextBox.Text;
nowaRezerwacja.nazwisko_klienta = nazwiskoTextBox.Text;
nowaRezerwacja.email_klienta = emailTextBox.Text;
nowaRezerwacja.nrtel_klienta = nrKomTextBox.Text;
nowaRezerwacja.numer_miejsca = Hidden1.Value;
nowaRezerwacja.data_rezerwacji = dzisiejszaData;
nowaRezerwacja.czas_rezerwacji = godzinaRezerwacji;
nowaRezerwacja.id_seansu = id_seansu;
bazaDC.rezerwacjes.InsertOnSubmit(nowaRezerwacja);
bazaDC.SubmitChanges();*/
}
Aber wenn ich schreiben möchte diese Variable durch Response.Write ("id_seansu") in rezerwujButton_Click Es ist immer "0". Aber wenn ich es in godziny_Click schreiben möchte, habe ich korrekten Wert. Warum erhält die Variable in einer anderen Funktion den Wert 0?
Da beide Methoden nicht innerhalb des gleichen Request/Response-Zyklus aufgerufen werden. Sie müssten diesen Wert in der "Sitzung" oder einem anderen persistenten Zustandsmanager speichern. –
Ok, ich habe es verstanden, aber es funktioniert immer noch nicht. In der Funktion godziny_Click habe ich den korrekten Wert, aber wenn ich versuche, Session ["id_seansu"] in rezerwujButton_Click zu schreiben, ist es immer null ... –