Добавить список в сессию - PullRequest
0 голосов
/ 23 февраля 2012

Привет! У меня есть список на моей странице asp. Как добавить элементы списка в сеанс, чтобы он сохранялся между переходами по страницам

Может ли какая-нибудь помощь

Ответы [ 2 ]

3 голосов
/ 23 февраля 2012

По умолчанию вы можете хранить любой тип объекта в сеансе, потому что он хранится в памяти.Таким образом, вы можете использовать его для хранения ListItemCollection ListBox.

Session["MyListBoxItems"] = ListBox1.Items.Cast<ListItem>().ToArray();

, а затем вы можете использовать AddRange для их восстановления:

ListBox1.Items.AddRange((ListItem[])Session[ "MyListBoxItems" ]);

Редактировать : Если вы используете старую версию фреймворка, используйте CopyTo :

ListItem[] myListItemArray = new ListItem[ ListBox1.Items.Count ];
ListBox1.Items.CopyTo(myListItemArray, 0);
Session[ "MyListBoxItems" ] = myListItemArray;
2 голосов
/ 23 февраля 2012

Вы можете сделать что-то вроде этого.

    ListBox mylist = new ListBox();
    mylist.Items.Add(new ListItem("Tahir", "Tahir"));
    Session["ITEM"] = mylist;
    foreach (ListItem Item in ((ListBox)(Session["ITEM"])).Items)
    {          
        mylist.Items.Add(new ListItem(Item.Text, Item.Value));
    }

однако вы можете захотеть проверить, содержит ли сеанс поле списка или нет, потому что при первой загрузке страницы список не будет отображаться в сеансе, и вы должны сохранить его при загрузке страницы, а затем использовать ее. как хочешь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...