Пользовательские глобальные теги в ASP.NET/IIS - PullRequest
0 голосов
/ 15 февраля 2012

Я хотел бы создать несколько пользовательских тегов, которые можно использовать в HTML в IIS. Я хотел бы реализовать эти специальные теги с использованием C # / ASP.NET.

Чего я хочу добиться, так это того, что у меня есть центральная база данных, где я храню определенную информацию, например, цены на услуги и такую ​​информацию. Затем я хотел бы иметь возможность использовать специальные теги в HTML, которые анализируются и преобразуются на стороне сервера перед отображением данных на стороне клиента.

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

То, к чему у меня есть доступ в CMS с закрытым исходным кодом, - это изменение значений в web.config и Global.asax.

Пожалуйста, предложите, как я могу реализовать такую ​​услугу. Я открыт для всех решений.

Ответы [ 3 ]

0 голосов
/ 15 февраля 2012

Я бы реализовал это с HttpModule и Filter:

  • Создайте HttpModule, чтобы выбрать контент, к которому вы хотите применить Filter
  • Используйте Filter для замены пользовательских тегов собственным контентом

Рик Страл написал статью об использовании Response.Filter для сжатия вывода любой страницы, и есть другие примеры , с которых следует начать.

0 голосов
/ 15 февраля 2012

Звучит так, будто вы ищете пользовательский элемент управления ASP.NET.Синтаксис вашей разметки может выглядеть примерно так:

<cms:MyTag runat="server" MyProperty="myvalue" />

Элемент управления может затем получить доступ к вашей CMS и сгенерировать HTML и / или JavaScript, которые необходимы браузеру для отображения страницы.

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

0 голосов
/ 15 февраля 2012

Вам следует взглянуть на HTTP-фильтры, так как это позволит вам внедрить функциональность, описанную вами, в конвейер ответов даже фиксированной CMS:

http://msdn.microsoft.com/en-us/magazine/cc301704.aspx

http://msdn.microsoft.com/en-us/library/ff649096.aspx

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