C # HtmlEncode - Имена сущностей ISO-8859-1 против чисел

Согласно следующей таблице для стандарта ISO-8859-1 , похоже, есть имя объекта и номер объекта, связанные с каждым зарезервированным символом HTML.

Так, например, для символа é :

Имя объекта: & eacute;

Номер объекта: & # 233;

Аналогично для персонажа > :

Имя объекта: & gt;

Номер объекта: & # 62;

Для данной строки HttpUtility.HtmlEncode возвращает строку в кодировке HTML, но я не могу понять, как это работает. Вот что я имею в виду:

Console.WriteLine(HtmlEncode("é>"));
//Outputs é>

Похоже, что для символа é используется номер объекта, а для символа > - имя объекта.

Так действительно ли метод HtmlEncode работает со стандартом ISO-8859-1? Если да, то есть ли причина, по которой он иногда использует имя объекта, а иногда номер объекта? Что еще более важно, могу ли я заставить его надежно дать мне имя объекта?

EDIT: Спасибо за ответы, ребята. Однако я не могу расшифровать строку, пока не выполню поиск. Не вдаваясь в подробности, текст сохраняется в списке SharePoint, а «поиск» выполняется самим SharePoint (с использованием запроса CAML). В общем, я не могу.

Я пытаюсь придумать способ преобразования номеров сущностей в имена, есть ли в .NET функция, которая это делает? Или какая-нибудь другая идея?

10
задан Christian Payne 17 February 2011 в 01:13
поделиться