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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> EnableViewState == false и дочерние контролы 
:(
    Опции темы
Idsa
Дата 24.7.2007, 23:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Подскажите, как влияет отключение EnableViewState у контрола на дочерние контролы?
В качестве примера приведу вот такой код:
Код

    protected void Page_Load()
    {
        TextBox textBox = new TextBox();
        this.Form.Controls.Add(textBox);
        textBox.Text = "textBox";

        Button button = new Button();
        this.Form.Controls.Add(button);

        this.EnableViewState = false;
        textBox.EnableViewState = true;

        if (!this.IsPostBack)
        {
            textBox.ForeColor = System.Drawing.Color.Red;
        }
    }

Получается, что после отключения EnableViewState у предка, включение EnableViewState у дочернего контрола ни на что не влияет.

Получается, что если на странице 100 контролов, а включить EnableViewState нужно только для одного... нужно выключить EnableViewState у 99 контролов (а в идеале хотелось бы выключить EnableViewState у Page, а включить у того самого единственного контрола). Может, я что-то упустил?


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


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1474
Регистрация: 12.5.2006
Где: Lamer-центер

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



совершенно верно... А иначе можно было б прописать в web.cofig
Код

<Pages EnableViewState="false"/>

И проставить EnableViewState="true" только в тех контролах где нам нужно.


--------------------
ICQ ::            857-857
E-mail ::         mymik[at]inbox[dot]ru 
HomaPage ::  http://localhost/

:to_become_senile  :this
PM MAIL WWW ICQ   Вверх
Idsa
Дата 25.7.2007, 19:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Цитата(Mymik @  25.7.2007,  08:29 Найти цитируемый пост)
совершенно верно...

Отлично! Значит мне не померещилось smile
Однако хотелось бы узнать, с чем связан такой подход?


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


Опытный
**


Профиль
Группа: Участник
Сообщений: 743
Регистрация: 7.9.2005
Где: Саратов, ул. Поса дского, 298

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



Я в веб части дотнета немного ламер. Но есть предположение. 
Цитата(Idsa @  25.7.2007,  20:41 Найти цитируемый пост)
Однако хотелось бы узнать, с чем связан такой подход?

С производительностью. Т.е. пришла нам страничка (на сервер), проверяем, еслу у нее EnableViewState == true, то записываем состояние, повторяем процедуру со вложенными контролами; а если EnableViewState у странички == false, то на вложенные контролы мы и не смотрим - экономим время.

З.Ы. "Мы" - имеется в виду дотнет. smile 


Это сообщение отредактировал(а) Naum - 26.7.2007, 14:28


--------------------
У нас всего два праздника Новый год и ТЯПница.
PM MAIL ICQ   Вверх
Idsa
Дата 3.8.2007, 13:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Цитата(Naum @  26.7.2007,  14:27 Найти цитируемый пост)
С производительностью. Т.е. пришла нам страничка (на сервер), проверяем, еслу у нее EnableViewState == true, то записываем состояние, повторяем процедуру со вложенными контролами; а если EnableViewState у странички == false, то на вложенные контролы мы и не смотрим - экономим время.

Вполне может быть. Однако, во-первых, проверка булевского значения пусть даже для 1000 контролов не такая уж и трудоемкая задача, а во-вторых, разработчики должны были стремиться к достижению золотой середины между производительностью и удобством написания программ (ну уж ооочень неудобно выставлять для 999 контролов EnableViewState = false). Так что, скорее всего, в таком подходе есть какой-то особый смысл.


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

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

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

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


 




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


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

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