При импорте пользовательского ввода через веб-интерфейс я выполняю очистку HTML (исправление тегов HTML с ошибками, незакрытых тегов и т. Д.) Перед очисткой. В части очистки HTML используется TidyManaged , которая работает уже более года. Однако два дня назад я иногда получал следующее сообщение об ошибке:
Unable to find an entry point named 'tidyCreate' in DLL 'tidy.x86.dll'."
Странно то, что я не смог воспроизвести эту проблему самостоятельно, и, похоже, это не происходит каждый раз с моими пользователями. Я попытался отправить тот же HTML, который предположительно вызывает ошибку, но все работает нормально.
Я искал в Интернете эту проблему и нашел соответствующие сообщения об ошибках (unable to find an entry point...
), но этот код работает нормально уже довольно давно.
Я использую последнюю версию пакета (1.1.4) с .NET Framework 4.5. Вот мой код:
using TidyManaged;
public static string HTML5Cleanup(this string source) {
using (var doc = Document.FromString(source)) {
doc.OutputBodyOnly = AutoBool.Yes;
doc.Quiet = true;
doc.CleanAndRepair();
var cleanHtml = doc.Save();
return cleanHtml;
}
}