Навигация по веб-странице с постоянством - ASP.NET C # - PullRequest
3 голосов
/ 13 августа 2010

У меня есть сайт, который уже завершен в ASP.NET.Мне нужно добавить раздел внизу, который содержит живое потоковое видео-чат (Flash Object), и мне нужно, чтобы оно сохранялось при разных посещениях страницы.

например, у меня есть profile.aspx и local.aspx, которые мне нужно посетить, и мне нужен маленький фрейм чата внизу, чтобы сохранить его между изменениями страницы.1006 * альтернативный текст http://c3gl.com/pageper.jpg

Единственные способы, которыми я могу думать, это ...

Сделать весь сайт на странице, который просто динамически загружает то, что ему нужно.или использовать нижнюю раму может быть?(не фанат этой идеи)

Есть ли другой способ сделать это или способ легко реализовать то, что мне нужно, учитывая тот факт, что у меня уже есть целая куча aspx?

Редактировать: я забыл упомянуть, чат является потоковым видео-чатом.(флэш-объект)

Ответы [ 4 ]

2 голосов
/ 13 августа 2010

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

Я думаю, что использование фрейма - это действительно лучший выбор, если вы не хотите заходить и изменять существующие страницы. Если вам не нужно общаться между разделом чата и главной страницей, это будет самый быстрый и простой способ добиться цели.

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

2 голосов
/ 13 августа 2010

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

0 голосов
/ 13 августа 2010

Не сохраняйте окно чата вообще, сохраняйте чат. Сделайте это, как в Facebook, где каждая страница получает новый чат, и этот чат регулярно получает текущее состояние чата.

Если вы сохраните окно чата, оно не будет работать, так как разные вкладки будут в разных состояниях.

0 голосов
/ 13 августа 2010

Вы работаете над базой данных?Почему бы не поместить трафик чата в базу данных и загрузить его обратно при загрузке новых страниц?Если вы хотите сохранить только небольшой объем текста (скажем, пространство экрана небольшого окна), вы можете даже использовать состояние сеанса.

Сделать постоянную область пользовательским элементом управления (файл .ascx), чтобы вы могли инкапсулироватьсохранение и перезагрузка в одном месте, и вы легко можете добавить его на любую нужную вам страницу.

Используете ли вы главные страницы?Если это так, просто поместите .ascx на главную страницу.Вам, возможно, вообще не придется изменять свои отдельные страницы.

Чтобы сохранить текст в окне чата при его вводе, вам придется использовать AJAX.Я бы использовал что-то вроде JQuery (прекрасно работает с ASP.NET WebMethods и .asmx) для отправки содержимого окна чата обратно на сервер через заданный интервал.

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