Html Agility Pack: простой "Sanitizer" с параметрами словаря
Движка Seach не хватало для информации о форме словарных параметров
AjaxControlToolkit.Sanitizer.HtmlAgilityPackSanitizerProvider sanitizer =
new AjaxControlToolkit.Sanitizer.HtmlAgilityPackSanitizerProvider();
textBoxPublicInput.Text =
sanitizer.GetSafeHtmlFragment(
textBoxPublicInput.Text,aDictionary,anotherDictionary
);
Что я должен указать в параметрах aDictionary и anotherDictionary? Какими должны быть элементы? Я вижу, что нужна строка в массив словаря строк, но какие строки? Каковы правила?
Предположим, что доверенными тегами являются только , , Спасибо за ваше время.-
1 ответ
Следующее относится к AjaxControlToolkit.HtmlEditor.Sanitizer
NuGet
Тебе необходимо Dictionary<string, string[]>
где ключ это имя элемента (например, p
и значение является массивом разрешенных атрибутов для этого элемента (например, style
, class
).
var validHtmlTags = new Dictionary<string, string[]>
{
{"p", new[] {"style", "class", "align"}},
{"div", new[] {"style", "class", "align"}}
//etc ...
};
var sanitizer = new AjaxControlToolkit.HtmlEditor.Sanitizer.DefaultHtmlSanitizer();
var sanitized = sanitizer.GetSafeHtmlFragment(toBeSanitizedText, validHtmlTags);