Можно ли использовать веб-элемент управления ASP.NET (ASCX) для рендеринга XML?
-
22-07-2019 - |
Вопрос
Вдобавок ко всему, я не вижу причин, по которым вы не могли структурировать настраиваемый веб-элемент управления ASP.NET (файл ASCX) для вывода только XML.
Если вы избегаете использования элементов управления в пространстве имен System.Web.UI и просто используете теги XML и субэлементы управления, которые также отображают только XML, вы должны получить абсолютно правильный документ XML.
Я прав, или мне чего-то не хватает?
Решение
Если вы хотите сгенерировать XML-документ и вернуть его клиенту, вероятно, будет проще, если вы создадите обработчик http (IHttpHandler) вместо использования страницы и пользовательских элементов управления.
Другие советы
Вам не хватает того, что элемент управления должен находиться внутри страницы, которая будет иметь какой-то вывод HTML для тега, отмечающего начало и конец элемента управления, хотя может быть способ переопределить это.
Ваша идея может сработать, если ваш ASCX генерирует чистый XML, и вы перезаписываете методы Render страницы, чтобы заменить HTML-теги, которые формируют элементы HTML, BODY, FORM и т. д.
Вопрос в том, что вы получите от этого подхода, а не от простого создания XML-документа и создания библиотеки классов, которая генерирует те XML-фрагменты, которые вы хотите сгенерировать с помощью ASCX.