Можете ли вы визуализировать элемент управления ASP.Net на странице, отличной от ASP.Net, через AJAX?
-
10-07-2019 - |
Вопрос
У нас есть старая страница, написанная на классическом ASP, которая выполняет вызовы к существующей странице .asp через объект Updater библиотеки Prototype.
Этот вызов передал некоторые параметры строки запроса вместе с запросом и получил список параметров для обновления, а также блок HTML/JS для отображения на главной странице ASP.
Кажется, что жизненный цикл страницы усложняет ситуацию, но реализация в реальном серверном или пользовательском элементе управления может сработать.
[РЕДАКТИРОВАТЬ]Я хотел бы уточнить/упростить исходный вопрос:Есть ли способ отобразить элемент управления ASP.NET (.ascx или серверный элемент управления) на странице, отличной от ASP.net?
В идеале он должен вызываться через AJAX и возвращать блок текста HTML вместе с каким-то способом передачи состояния на принимающую страницу.
Решение
Вы можете поместить элемент управления в веб-службу, которая возвращает необработанный HTML-код в качестве вывода, и вызывать веб-службу из AJAX, размещая результаты там, где вы хотите, используя динамический HTML.Возможно, вам придется поиграть с выходным буфером элемента управления, чтобы это работало так, как вы хотите.
Другие советы
Вы могли бы поместить IFRAME в asp, содержащий страницу aspx, и использовать какой-то механизм для передачи параметров, возможно, через значение QueryString?
Страница asp может записать запись (параметры) в таблицу, создав идентификатор (Guid), который передается на страницу aspx, которая получает запись?
Предполагая, что ваш веб-сервер может запускать файлы .aspx в целевой платформе, тогда да, вы можете отображать РЕЗУЛЬТАТЫ элемента управления/страницы в классическую страницу asp или в простую старую страницу html, если на то пошло.У вас не может быть каких-либо функций на стороне сервера, поэтому вы просто будете отображать сгенерированные в формате HTML результаты элемента управления/страницы.