Примечание. По рабочему процессу я не имею в виду технологию документооборота, такую как Foundation Workflow.
Слишком часто я нахожу, что мне нужно разрабатывать страницы, которые проходят через несколько этапов.
1) Выберите один из параметров. Отправить. 2) Заполните страницу с результатами. Вносить изменения. Отправить. 3) Сделайте что-то, основанное на предыдущих результатах. Отправить. 4) Подтвердите предыдущие действия. Отправить. 5) Перейти к 1.
Сайт электронной коммерции с корзиной покупок был бы примером учебника.
Теперь есть несколько способов справиться с этим. Мой вопрос: какой рекомендуемый способ сделать это в asp.net? В PHP или ISAPI я бы просто использовал стандартные элементы управления html, получал сообщения и делал с ними все, каждый на другой странице.
ASP.NET, похоже, более ориентирован на решения с одной страницей. Выполняйте свою работу, отправляйте назад, а затем покажите свои результаты на одной странице. Двигайтесь до конца, используя что-то вроде MultiView или UpdatePanels для выполнения задания. Но ключевым моментом, вы не отправляете обратно на другую страницу.
Теперь я понимаю, что в последних версиях Microsoft добавила обратные ссылки на страницы в .NET, но это кажется менее искушенным и довольно громоздким. Трудно работать с данными, которые были отправлены обратно, если вы не открыли его через свойства или что-то с вашей предыдущей страницы.
Как вы справляетесь с описанным выше сценарием? Вы используете мульти-просмотр или обновленную панель и делаете все это на одной странице? Или вы делаете это на нескольких страницах? Каковы ваши лучшие практики в этом отношении? У вас есть какие-то конкретные проекты, которые вы склонны использовать? Как вы собираетесь структурировать рабочий процесс сайтов?