Массив продолжает сбрасываться после отправки формы

У меня есть код и массив внутри, как этот:

using System;

public partial class bug : System.Web.UI.Page
{

double[] Score = new double[10];
protected void Page_Load(object sender, EventArgs e)
{

 load the form with questions from database (but show only one)
}
 protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
 {
  when this clicked, evaluate the answer from TextBox1 and write the score to Score[questionnumber].
 }
 protected void ImageButton2_Click(object sender, ImageClickEventArgs e)
 {
  go to the question of the clicked Hyperlink's number.
 }

}

Итак, что происходит, я открываю этот веб-сайт, я вижу там первый вопрос, я помещаю свой ответ и отправляю его, затем он возвращает оценку моего первого вопроса, после чего я нажимаю гиперссылку второго вопроса, и форма переносит меня на второй вопрос, вот проблема возникает, я не знаю, почему, но массив (массив Score) сбрасывается здесь, поэтому, когда я отправляю свой ответ на 2-й вопрос, он помещает ответ в Score[0] вместо того, чтобы помещать его в указатель номера вопроса может быть, это снова инициализировать из-за этого. Итак, что я должен сделать, чтобы не происходило сброса? Пожалуйста, помогите, мне это действительно нужно.

1 ответ

Решение

Вот ответ, который я наконец нашел:

if (!IsPostBack)
    {

        int sum = new deney().Database();
        Score = new double[sum];
        Session["myScore"] = Score;
    }

    Score = (double[])Session["myScore"];

По сути, помещая массив сессий в сессию и получая его обратно при каждой отправке формы. Благодаря Лассе против Карлсена он предоставил мне этот ответ в чате. Я считаю, что если бы для чата не требовалось так много репутации, мы не увидели бы так много вопросов, открывающихся каждый день, плюс, я думаю, Stackru был бы лучше. Миллион спасибо всем, особенно Лассе против Карлсена

Лассе против Карлсена оригинальный ответ на Чат Платформе

Другие вопросы по тегам