2012-02-14 3 views
0

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

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

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

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

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

+0

Вы спрашиваете, возможно ли создать собственный тег HTML, который анализирует и расширяет серверную часть в некоторые значимые данные? У вас есть доступ к странице .aspx, содержащей разметку, которую вы хотите изменить? Твое намерение здесь не совсем понятно. – Chris

+0

Мне кажется, что вам нужно использовать элементы управления '* .ascx'. –

+0

Я рассмотрю приведенные ниже рекомендации о создании фильтра HTTP, который может ввести необходимую функциональность. – Gunnar

ответ

0

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

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

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

+0

Спасибо за ваше предложение, я также рассмотрю это. – Gunnar

0

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

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

Rick Strahl wrote an article об использовании Response.Filter для сжатия вывода любой страницы, и есть other examples который должен вас начать.

+0

Спасибо за ваше предложение, я рассмотрю это. – Gunnar

0

Похоже, что вы используете ASP.NET User Control. Синтаксис для разметки может быть что-то вроде:

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

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

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