Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Сохранение переменной при перезагрузке страницы 
V
    Опции темы
Miller_time
Дата 31.10.2008, 13:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 641
Регистрация: 8.9.2006
Где: Нижний Новгород

Репутация: 1
Всего: 1



Как созранить данные переменной после перезагрущки? 


Пример:

Код

 public String change_user;
    protected void ListBox1_SelectedIndexChanged(object sender, EventArgs e)
    {
        change_user = ListBox1.Text;
    }


Но после перезагрузки change_user приобретает значение null:(. Подскажите где хранить данные ?


--------------------
Мы делаем игрыЗДЕСЬ
PM MAIL WWW ICQ   Вверх
Idsa
Дата 31.10.2008, 13:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2086
Регистрация: 5.12.2006
Где: Томск

Репутация: 15
Всего: 62



Miller_time, какое "место" выбрать для хранения того или иного объекта зависит от массы параметров.
В Вашем случае, думаю, подойдет самый простой вариант - ViewState:
Код

 public String change_user;

    protected void Page_Load(object sender, EventArgs e)
    {
        this.change_user = this.ViewState["ChangeUser"];
    }

    protected void ListBox1_SelectedIndexChanged(object sender, EventArgs e)
    {
        change_user = ListBox1.Text;
        this.ViewState["ChangeUser"] = change_user;
    }

Если ListBox используется не на странице, а в контроле (что предполагает повторное использование), лучше воспользоваться не ViewState, а ControlState. Это позволит контролу работать без сбоев при отключенном ViewState.

Вообще же, вариантов масса: Context.Items, Cache, Session...


--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
geociolpan
Дата 31.10.2008, 13:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 23.7.2008

Репутация: нет
Всего: нет



Используй объект Session.

Код

if (Session["User"] != Null)
       change_user = Session["User"];
else
      {
        Session["User"] = ListBox1.Text;
        change_user = Session["User"];
      }





Это сообщение отредактировал(а) geociolpan - 31.10.2008, 14:05
PM MAIL   Вверх
Miller_time
Дата 31.10.2008, 15:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 641
Регистрация: 8.9.2006
Где: Нижний Новгород

Репутация: 1
Всего: 1



Idsa

Пытаюсь сделать через ViewState[]

код приведенный выше или ниже

Код

this.change_user = this.ViewState["ChangeUser"];


Студия начанает жаловаться на 

Код

Error    1    Cannot implicitly convert type 'object' to 'string'. An explicit conversion exists (are you missing a cast?)    C:\Inetpub\wwwroot\portal\admin\page.aspx.cs    27    28    C:\...\portal\


Подскажите что не так ? 


--------------------
Мы делаем игрыЗДЕСЬ
PM MAIL WWW ICQ   Вверх
Idsa
Дата 31.10.2008, 16:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2086
Регистрация: 5.12.2006
Где: Томск

Репутация: 15
Всего: 62



Miller_time, нужно добавить явное приведение типа:
Код

this.change_user = (string)this.ViewState["ChangeUser"];



--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
Miller_time
Дата 1.11.2008, 09:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 641
Регистрация: 8.9.2006
Где: Нижний Новгород

Репутация: 1
Всего: 1



Я в принцапе так и делаю,
Код

this.change_user = (string)this.ViewState["CU"];


он записывает,

Код

this.ViewState["CU"] = "test";



но при записывание из ListBox1

Код

 this.ViewState["CU"] = ListBox1.Text;


даннные не соранются может быть,надо что то в свойствах ListBox1 поставить ? 


--------------------
Мы делаем игрыЗДЕСЬ
PM MAIL WWW ICQ   Вверх
Idsa
Дата 1.11.2008, 09:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2086
Регистрация: 5.12.2006
Где: Томск

Репутация: 15
Всего: 62



Цитата(Miller_time @  1.11.2008,  13:31 Найти цитируемый пост)
даннные не соранются может быть,надо что то в свойствах ListBox1 поставить ?  

Уверен, что все сохраняется. Поставьте в этом месте breakpoint и посмотрите, чему равен ListBox1.Text. Затем выполните эту строчку и посмотрите в Watch, чему равен this.ViewState["CU"]


--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
Miller_time
Дата 1.11.2008, 09:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 641
Регистрация: 8.9.2006
Где: Нижний Новгород

Репутация: 1
Всего: 1



Не заносяться данные :(, что может быть не так ? 

Это сообщение отредактировал(а) Miller_time - 1.11.2008, 10:02

Присоединённый файл ( Кол-во скачиваний: 6 )
Присоединённый файл  scrin3.gif 5,36 Kb


--------------------
Мы делаем игрыЗДЕСЬ
PM MAIL WWW ICQ   Вверх
Idsa
Дата 1.11.2008, 10:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2086
Регистрация: 5.12.2006
Где: Томск

Репутация: 15
Всего: 62



Miller_time, на рисунке отчетливо видно, что проблема не в том, что данные не заносятся во ViewState, а в том, что ListBox1.Text возвращает пустую строку. Видимо, в ListBox1 просто не выбран ни один элемент. Если элемент все-таки выбран, попробуйте включить для ListBox ViewState (если он, конечно, выключен).


--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
Miller_time
Дата 1.11.2008, 10:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 641
Регистрация: 8.9.2006
Где: Нижний Новгород

Репутация: 1
Всего: 1



Все нашел мой касяк,я при перезагрузке очищал listbox1 поэтому значения не заносились.


--------------------
Мы делаем игрыЗДЕСЬ
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Любитель
Mymik
mr.DUDA

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Любитель, Mymik, mr.DUDA.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Разработка под ASP.NET | Следующая тема »


 




[ Время генерации скрипта: 0.1002 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.