asp.net: управление DetailsView, не интерпретирующее HTML

У меня есть asp.net detailsview управление на странице. Я заметил, что это всегда отображает необработанный текст от моего поля базы данных, это не интерпретирует HTML в тексте - таким образом, это отображается <b> mytext </b> вместо просто mytext полужирным.

Должен там так или иначе получить контроль для интерпретации HTML в возвращаемых данных

Плавка отношений

5
задан Melt 10 January 2010 в 15:09
поделиться

1 ответ

Можете ли вы опубликовать код своего контроля? По сути, вам нужно установить для свойства HtmlEncode значение false. Это связано с разницей в том, как метки и текстовые поля обрабатывают кодирование, что-то предназначено для защиты вас от вредоносных сценариев, которые кто-то мог ввести в эти поля.

Если у вас настроено автоматическое создание полей (по умолчанию), вам нужно будет вместо этого изменить на BoundField s или TemplateField s и установить для вызывающего нарушения Свойство HtmlEncode имеет значение false.

Вы можете увидеть образец кода отдельных полей в MSDN , вот упрощенный пример:

<asp:DetailsView runat="server" AutoGenerateRows="False">
  <Fields>
    <asp:BoundField DataField="ProductName" HeaderText="Product" />
    <asp:BoundField DataField="CategoryName" HeaderText="Category" />
    <asp:BoundField DataField="HTMLField" HeaderText="HTML" HtmlEncode="false" />
  </Fields>
</asp:DetailsView>
8
ответ дан 14 December 2019 в 04:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: