Почему это не HTMLEncoding - "<" или "&"

-4

Может кто-нибудь сказать мне, почему это не кодирование с использованием htmlencode

любая строка, которая имеет <перед строкой, т.е.

<something or &something 

не отображается на html-странице при просмотре кодировки <и & не кодируется. Я бы ожидал, что эти символы будут закодированы до <или &

edit: это код, который я использую для кодирования строки:

var replacedHtml = Regex.Replace(html,
@"</?(\w*)[^>]*>",
me => AllowedTags.Any(s => s.Equals(me.Groups[1].Value, StringComparison.OrdinalIgnoreCase))
? me.Value
: HttpUtility.HtmlEncode(me.Value), RegexOptions.Singleline);

return replacedHtml;

edit: Я думаю, что проблема не на стороне сервера, а на угловой стороне. ng-bind-html

<span ng-bind-html="ctl.linkGroup.Notes | TextToHtmlSafe">

angular.module('CPSCore.Filters')
.filter('TextToHtmlSafe', ['$sce',function ($sce) {
return function (text) {
if (!text)
return text;

var htmlText = text.replace(/\n/g, '<br />');
return $sce.trustAsHtml(htmlText);
};
}]);

заявляет, что

<something 

без закрывающего тега не является безопасным и, следовательно, удаляет его из представления

спросил(а) 2021-01-14T00:26:36+03:00 2 недели назад
1
Решение
86

В HTML символ амперсанда ("&") объявляет начало ссылки на сущность (специальный символ). Если вы хотите, чтобы текст отображался в тексте на веб-странице, вы должны использовать закодированную именованную сущность "&" -Более технический mumbo-jumbo на w3c.org. В то время как большинство веб-браузеров позволят вам уйти, не кодируя их, материал может стать критичным в странных случаях кросс и полностью скомпрометироваться в XML.

Другие главные символы, которые нужно запомнить, - <(<) и> (>), вы не хотите путать браузер с тем, где начинаются и заканчиваются теги HTML

ответил(а) 2021-01-14T00:26:36+03:00 2 недели назад
43

Попробуйте System.Net.WebUtility.HtmlDecode для правильного декодирования специальных символов. Используя это, < изменения в < и & изменяется в & который правильно отображает html-страницы.

ответил(а) 2021-01-14T00:26:36+03:00 2 недели назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема