ASP.NET перебор неровного массива, хранящегося в сеансе

StackOverflow https://stackoverflow.com/questions/2322807

  •  22-09-2019
  •  | 
  •  

Вопрос

у меня возникли некоторые проблемы с неровными массивами, хранящимися в сеансе для ASP.net у меня есть некоторый код, который создает неровный массив, их заполняет, а затем сохраняет этот заполненный неровный массив в сеансе

protected string[][] answersJArray;
answersJArray[0] = new string[4]("test","test1","test2","test3"};
answersJArray[1] = new string[4]("test","test1","test2","test3"};
Session.Add("answersJArray", answersJArray);

как бы я перебирал каждый неровный массив в сеансе ??если бы они не были на сеансе, я нет, я мог бы сделать следующее

    for (j = 0; j < answersJArray[1].Length; j++)
    {
        label.Text = (answersJArray[1][j].ToString());
    }

как бы я сделал вышеописанное , прокручивая сеанс в цикле??

Спасибо

Это было полезно?

Решение

Сначала объявите переменную с зазубренным массивом и приведите ее из переменной сеанса следующим образом:

string[][] answersJArray = (string[][])Session["answersJArray"];

Затем вы можете выполнить цикл по массиву, как вы и собирались:

    for (j = 0; j < answersJArray[1].Length; j++)
    {
        label.Text = (answersJArray[1][j].ToString());
    }

Другие советы

Не должно быть слишком сложно.Вы можете вывести объект из сеанса и преобразовать его в строку[].Если это локальная переменная, вы можете проверить ее длину и выполнить итерацию таким образом.Возможно, я неправильно понимаю вашу проблему, но я что-то упускаю, говоря, извлеките переменную из карты сеанса, чтобы вы могли работать с ней как со строгим типом?

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top