HttpEncoder Класс

Определение

Предоставляет логику кодирования и декодирования.

public ref class HttpEncoder
public class HttpEncoder
type HttpEncoder = class
Public Class HttpEncoder
Наследование
HttpEncoder
Производный

Комментарии

Класс содержит логику кодирования и декодирования, используемую методами в таких классах HttpUtility , как, HttpServerUtility и HttpResponseHeader .

Можно наследовать от HttpEncoder класса и переопределить его поведение для настройки кодировки по умолчанию и декодирования ASP.NET. Затем задайте EncoderType свойство HttpRuntimeSection класса, чтобы настроить пользовательский класс.

Пользовательский класс для кодирования и декодирования, производного от, HttpEncoder может переопределить встроенное поведение кодирования и декодирования ASP.NET или изменить только выбранные аспекты.

Можно настроить пользовательский тип кодирования для в ASP.NET, чтобы заменить или дополнить следующее поведение кодировки:

  • Кодирование HTML

  • Кодировка атрибута HTML

  • Кодирование URL-адреса

  • Кодирование URL-пути

  • Имя заголовка HTTP и кодировка значений заголовка

По умолчанию ASP.NET приложения настроены на использование AntiXssEncoder типа для всех кодировок вывода.

В следующем примере из файла Web.config уровня приложения показано, как AntiXssEncoder Тип задается для приложения ASP.NET:

<httpRuntime requestValidationMode="4.5" encoderType="System.Web.Security.AntiXss.AntiXssEncoder, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>

Параметр конфигурации в примере задает AntiXssEncoder класс для выполнения всех кодировок вывода в приложении. Дополнительные сведения см. в разделе AntiXssEncoder Общие сведения о классе.

Примечания для тех, кто наследует этот метод

При создании пользовательского класса кодировщика и переопределении базовых методов базового класса производный кодировщик может вызвать исключение из любого переопределенного метода. Однако в следующих случаях создание такого исключения может привести к непредвиденному поведению в ASP.NET:

— Если ASP.NET выводит страницу ошибки, вызванную необработанным исключением, которое было создано из пользовательского кодировщика, ASP.NET не пытается кодировать вывод ошибок путем вызова пользовательского кодировщика. Это позволяет избежать рекурсивных условий возникновения ошибок.

— Когда ASP.NET отправляет заголовки HTTP в службы IIS, ASP.NET не предоставляет необработанные исключения. Поэтому будет отображена стандартная страница ошибки ASP.NET (если параметры конфигурации позволяют отображать эту страницу).

Конструкторы

HttpEncoder()

Инициализирует новый экземпляр класса HttpEncoder.

Свойства

Current

Получает или задает тип HttpEncoder, который будет использован в приложении.

Default

Получает ссылку на кодировщик ASP.NET по умолчанию.

Методы

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
HeaderNameValueEncode(String, String, String, String)

Кодирует имя и значение заголовка в строку, которая может быть использована в HTTP-заголовке.

HtmlAttributeEncode(String, TextWriter)

Кодирует входящее значение в строку, которая может быть вставлена в HTML-атрибут, ограниченный одинарными или двойными кавычками.

HtmlDecode(String, TextWriter)

Декодирует значение из строки в кодировке HTML.

HtmlEncode(String, TextWriter)

Зашифровывает строку в строку в кодировке HTML.

JavaScriptStringEncode(String)

Кодирует строку.

MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)
UrlEncode(Byte[], Int32, Int32)

Кодирует массив недопустимых в URL-адресе символов в шестнадцатеричный эквивалент сущности знака.

UrlPathEncode(String)

Кодирует часть URL-адреса.

Применяется к

См. также раздел