Вопрос по c#, asp.net, ajaxcontroltoolkit, webforms – Не удалось загрузить тип «AjaxControlToolkit.Sanitizer.AntiXssSanitizerProvider».

5

Я пытался использовать htmleditorextender, но получаю ошибку. ниже мои настройки

<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>

<asp:TextBox runat="server" ID="textBoxGalleryUrl" CssClass="cstmtxtclr" />
<asp:HtmlEditorExtender ID="HtmlEditorExtender1" runat="server" TargetControlID="textBoxGalleryUrl"></asp:HtmlEditorExtender>

Мои настройки web.conf:

  <configSections>
    <sectionGroup name="system.web">
      <section name="sanitizer"
          requirePermission="false"
          type="AjaxControlToolkit.Sanitizer.ProviderSanitizerSection, AjaxControlToolkit"/>
    </sectionGroup>
  </configSections>

  <system.web>
    <!--<httpRuntime requestValidationMode="2.0"/>-->
    <compilation debug="true" targetFramework="4.0"/>

    <sanitizer defaultProvider="AntiXssSanitizerProvider">
      <providers>
        <add name="AntiXssSanitizerProvider"
              type="AjaxControlToolkit.Sanitizer.AntiXssSanitizerProvider"></add>
      </providers>
    </sanitizer>
  </system.web>

У меня в папке bin находятся следующие dll;

AntiXSSLibrary.dll
SanitizerProviders.dll
HtmlSanitizationLibrary.dll

Но я все еще получаю эту ошибку;

Could not load type 'AjaxControlToolkit.Sanitizer.AntiXssSanitizerProvider'.

Why I am getting this error?

Попробуйте решение, предлагаемое Bertzzie вstackoverflow.com/questions/12022493/… , Меня устраивает. Fernando Angelieri

Ваш Ответ

4   ответа
1

Обыскав все выше и ниже для решения одной и той же проблемы, я понял, что Ajax Control Kit также необходимо загрузить через диспетчер пакетов библиотеки ...

PM & GT;Install-Package AjaxControlToolkit

Это решило проблему для меня.

0

Рекомендуется загрузить последнюю версию Html Agility Pack отсюда: http://htmlagilitypack.codeplex.com/ и поместите в свою корзину и добавьте ссылку на нее в свой проект.

Or use the install command :

ПМ & GT; Install-Package HtmlAgilityPack

вы можете посмотреть по этой ссылкеhttp://nuget.org/packages/HtmlAgilityPack

Вам не нужно использовать или ссылаться на AntiXSSLibrary, просто используйте HtmlAgilityPackSanitizerProvider, и ваша ошибка исчезнет

Удачи

hsobhy, как я могу использовать только htmlagilitypacksanitizerprovider Вы можете объяснить?
2

HTML Agility Pack должен быть установлен для всех новых версий Ajax Control Toolkit. К сожалению, многие ответы в Интернете неверны

14

С помощьюAntiXss как дезинфицирующее средство по умолчаниюбольше не поддерживается по состоянию на июнь 2012 года. Из официального анонса, по-видимому, новая версияAntiXss ломает слишком много вещей.

Использовать AjaxControlToolkit сHTML Agility Pack сначала вам нужно установить пакет с помощью Nuget (инструкция).

Тогда вы можете использоватьHTML Agility Pack как ваше дезинфицирующее средство путем изменения вашегоweb.config как это:

<configuration>
    <configSections>
        <sectionGroup name="system.web">
            <section name="sanitizer" requirePermission="false"
                     type="AjaxControlToolkit.Sanitizer.ProviderSanitizerSection, AjaxControlToolkit" />
        </sectionGroup>
    </configSections>

    <system.web>
        <sanitizer defaultProvider="HtmlAgilityPackSanitizerProvider">
            <providers>
                <add name="HtmlAgilityPackSanitizerProvider" type="AjaxControlToolkit.Sanitizer.HtmlAgilityPackSanitizerProvider"></add>
            </providers>
        </sanitizer>
      </system.web>
</configuration>

Надеюсь это поможет.

У меня работает, спасибо за полезный указатель :-)
я использую это, но он даже не удаляет "script" alert ("asdas") & lt; / script & gt; @MikeKingscott
Вы установилиHTML Agility Pack от Nuget? Я помню, что сначала установил это, и мне не нужно ничего настраивать ...
Я пытался, но я получаю это - & gt; Не удалось загрузить файл или сборку 'HtmlAgilityPack, версия = 1.4.0.0, культура = нейтральная, PublicKeyToken = bd319b19eaf3b43a & apos; или одна из его зависимостей. Определение манифеста расположенной сборки не соответствует ссылке на сборку. (Исключение из HRESULT: 0x80131040) DotNet Dreamer

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