Какой самый эффективный способ изменения содержимого перед рендерингом (ASP.Net) - PullRequest
1 голос
/ 10 октября 2011

Мы используем CMS, и мне нужно исправить некоторые части HTML-кода, который генерируется элементом управления, полностью помещенным в черный ящик.Обычно я подразделяю нарушающий элемент управления и настраиваю его, но из-за способа написания элемента управления я не могу удалить ошибочный атрибут.

Это оставляет мне единственный вариант выполнения этой операциичерез метод Render на самой главной странице.Я думал об изменении строки содержимого до ее рендеринга, это потребовало бы небольшого количества Regex в предложении удалить недопустимый отображаемый атрибут.

Учитывая, что эта операция будет выполняться на каждой странице, этосамый эффективный способ достижения этого?Должен ли я, возможно, сделать string.Contains (), чтобы сначала проверить наличие HTML-элемента?Использование Regex для этого вызовет проблемы с производительностью?

1 Ответ

0 голосов
/ 10 октября 2011

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

Еслиесли вы хотите архитектурное решение, «исправить перед привязкой» предпочтительнее «исправить в методе рендеринга».Это независимо от главной страницы или нет.Я бы предпочел втиснуть «набор данных» в использование событий привязки строк, поскольку код показывает более четкие намерения и обычно работает лучше.

Я бы также рассмотрел кэширование, если это одно и то же содержимое снова и снова.Если это не так, то почему вы используете главную страницу.И «у него есть событие рендера» - не веская причина.

Надеюсь, это поможет.

...