Публиковать данные в другой ASP.NET WebForm - PullRequest
0 голосов
/ 16 июля 2010

В моем приложении ASP.NET WebForms у меня есть WebForm, которая содержит UpdatePanel и несколько представлений, используемых для интерфейса, подобного мастеру.

В конце мастера пользователь может перейти на другую страницу, нажав кнопку.Для этой новой веб-страницы требуется около 5 значений из элементов управления на предыдущей странице.

Какой самый простой способ сделать это? (Редактировать: ТОЛЬКО с использованием HTTP POST с данными - это требование, поскольку в противном случае я бы использовал базу данных / сеанс)

Я пытался использовать межстраничное размещение сНе повезло, возможно из-за моей панели обновлений и нескольких представлений?

Я пытался использовать Server.Transfer, но это также не работает из-за панели обновлений.

Внимание:

  1. Данные должны быть отправлены через HTTP POST - данные нигде не могут быть сохранены
  2. Сценарий нельзя изменить.Я не могу поместить все на одной странице

Ответы [ 4 ]

1 голос
/ 16 июля 2010

Самый простой способ сделать это - поместить эти значения в объект сеанса.

0 голосов
/ 16 июля 2010

Я рекомендую вам объединить все соответствующие страницы в одну;скрытие панелей, которые не находятся в игре.ASP.NET будет поддерживать значения всех элементов управления для вас от поста к посту.Viewstate был разработан для пейзажей, как вы описываете.Чтобы свести размер Viewstate к минимуму, убедитесь, что вы указали значения для раскрывающихся элементов управления в их методах «Init».

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

0 голосов
/ 16 июля 2010

Если они переходят на другую страницу решения, у вас есть несколько вариантов.

  1. ViewState - ViewState отправляется со страницей доставки. Он находится в HTML, но зашифрован, поэтому никто не может видеть информацию. В зависимости от размера информации размер вашей страницы может быть довольно большим.
  2. Сеанс - Это помещает информацию на стороне клиента через куки.
  3. Строка запроса - Использование URI. Это следует использовать, только если это не конфиденциальная информация и вы не хотите, чтобы пользователь мог снова ссылаться на то же действие.
0 голосов
/ 16 июля 2010

Вы можете создать класс, который описывает данные, которые вам нужно отобразить на перенаправленной странице.Установите новый экземпляр этого в момент, когда пользователь заполняет данные мастера, заполните объект новых классов необходимой информацией, а затем добавьте его в сеанс в событии button_Click перед перенаправлением страницы.На странице, на которую вы перенаправлены, возьмите объект Session, поместите его в переменную и извлеките необходимые данные.

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