Удалить спецификацию со страницы вывода через web.config - PullRequest
4 голосов
/ 26 августа 2010

В настоящее время наши страницы выводятся с Unicode BOM.

Я нашел один способ убрать это, добавив следующее к моей главной странице OnInit.

protected override void OnInit(EventArgs e)
{
    base.OnInit(e);
    Response.ContentEncoding = new System.Text.UTF8Encoding(false);
}

Где false, передаваемый конструктору UTF8Encoding, отключает спецификацию.

Это работает нормально, но я бы предпочел установить это в web.config, а не полагаться на то, что он находится в иерархии OnInit любой страницы.

Элемент globalization имеет атрибут responseEncoding, который принимает строковое представление действительного конечного кодирования. например,

<globalization
    responseEncoding="utf-8"
    ... />

Есть ли способ представить " utf-8 без спецификации " в виде строки, которую можно использовать в качестве значения для responseEncoding в файле web.config?

1 Ответ

1 голос
/ 05 ноября 2014

BOM или Byte Order Mark иногда довольно раздражают.Visual Studio не изменяет файл, пока вы не сохраните его (как сказал Ганс).

И вот решение вашей проблемы: если вы хотите сохранить файл с другими кодировками, выберите «Сохранить как» и нажмите кнопку «Сохранить».в диалоговом окне файла и выберите «Сохранить с кодировкой».Или, если вы хотите навсегда избавиться от этой настройки, просто откройте меню «Файл» и выберите «Дополнительные параметры сохранения», и там вы должны выбрать «UTF-8 без подписи» (и это также ответило на ваш последний вопрос :).Да, «UTF-8 без подписи» такой же, как и без спецификации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...